Custom package example: Difference between revisions

From LFScript
 
(6 intermediate revisions by the same user not shown)
Line 1: Line 1:
'''This page is a rough draft, do not rely on it'''
This page is a template, which you can use to add your own packages to LFScript. Be sure to also read the details on the [[ScriptFactory Wiki Tags|special commands]] you can use here.
 
This is a sample layout which you must use if you are contributing a custom script. Note that this layout is roughly the same as used in BLFS, however because the page will be imported in LFScript through [[ScriptFactory]] it is important that you follow the style set here '''exactly'''.
 
If your software does not use the '''Pre-installation''', '''Post-installation''' or '''DESTDIR''' sections, you can leave them out. All other sections are mandatory.
 
If for any reason, your page causes problems with ScriptFactory, it will not be included in LFScript.
 
Finally, be sure to adapt and include the next line at the top of your page:


<scriptname>my-software</scriptname>
<scriptname>my-software</scriptname>
Line 20: Line 12:


== Dependencies ==
== Dependencies ==
* <dependency value="network-manager"/>[[NetworkManager]]
* <dependency value="busybox"></dependency>[[BusyBox]]
* <dependency>libpng</dependency>
* <dependency>libpng</dependency>


== Pre-installation ==
== Pre-installation ==
If your software requires any pre-installation (like adding special users or groups), you must specify it here.
<preinst>useradd -m sampleUser</preinst>
<preinst>useradd -m sampleUser</preinst>


== Installation ==
== Installation ==
<build>patch -Np1 < ../sourcecode-1.0_fix.patch</build>


If the software must be patched, explain here why.
<build>./configure --prefix=/usr &&
 
make</build>
<compile>patch -Np1 < ../sourcecode-1.0_fix.patch</compile>
 
Compile the software:
 
<compile>./configure --prefix=/usr &&
make</compile>
 
Then, as the '''root''' user:
 
<install>make install</install>


Note that the code block above does not have a <code>DESTDIR=${FAKEROOT}</code> directive. [[ScriptFactory]] will add these automatically if a <code>pre</code> block has <code>class="asRoot"</code>.
<build user="root">make install</build>


== Packaging note ==
== Packaging note ==
<destdir>prefix=</destdir>
<destdir>prefix</destdir>


== Post-installation ==
== Post-installation ==
This section must contain commands which will modify the software after it has been installed, or modify files installed by a different package. It should also contain those commands that configure the package for use on that specific machine.
<delaypostinst/><postinst>update-desktop-database</postinst>
 
<delaypostinst/>
 
For example:
 
<postinst>update-desktop-database</postinst>
 
If you add <code>class="delayPostinst"</code> to any code block in this section, all post-installation commands will be delayed until all software has been installed.

Latest revision as of 10:40, 5 March 2017

This page is a template, which you can use to add your own packages to LFScript. Be sure to also read the details on the special commands you can use here.

LFScript can find this software under the name my-software.

Sources


MD5 Checksums:

9244091002a9d52e91fca0b1f3818ab9  sourcecode-1.0.tar.xz
d41d8cd98f00b204e9800998ecf8427e  sourcecode-1.0_fix.patch

Dependencies

Pre-installation

useradd -m sampleUser

Installation

patch -Np1 < ../sourcecode-1.0_fix.patch
./configure --prefix=/usr &&
make

As the root user:

make install

Packaging note

The source code of this package does not support the standard use of DESTDIR. In stead it uses

prefix

Post-installation

Note: Post-installation of this software should be performed after all other software has been installed.

update-desktop-database