|
From: Friedrich L. <fl...@fl...> - 2003-04-21 20:14:03
|
Hi!
For those who want to add a new software package to devil linux
and who are not shure which files are needed.
This is the minimum list of files you need to add, eg. for
netacct-mysql:
scripts/netacct-mysql
This is the main file you need to write. Here you
essentially call the configure and/or makefile stuff of the
software you want to add. When the build system calls this
script your current work directory is the source directory
of the software in question, eg. tmp/netacct-mysql-0.75/
src/netacct-mysql-0.75.tar.gz
The software that get's added to devil linux. Do NOT apply
patches and repackage the original sources. But sources in
seperate files and apply them in the script mentioned above.
scripts/scripts/nacctd
If this software is optional (selectable via 'make menuconfig')
then you should put the runlevel script for your software here.
scripts/build/382netacct-mysql
scripts/install/382netacct-mysql
Just run a
touch scripts/build/382netacct-mysql
touch scripts/install/382netacct-mysql
to create empty files. That's how we can check this into CVS
because symlinks would not get checked in. The number 382 can
be replaced by any number you just have to take care that
software you rely upon does get compiled earlier.
If you do add software that should be part of the devil linux base
system and which is not selectable via 'make menuconfig' than you
need to the following files, eg.
config/etc/init.d/netacct-mysql
Don't put the runlevel script at scripts/scripts/netacct-mysql
but at this location because this way it will be part of the
devil linux base system
Sometimes your software packages needs some defaults for configure
or make. Put such files at scripts/config/, eg.
scripts/config/config-netacct-mysql
For an example of the build script look at
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/devil-linux/build/scripts/netacct-mysql?rev=1.2
Now you might ask, what about the /etc/init.d/rc?.d/ symlinks.
For this you have to out some lines like the following to your
start script
### BEGIN INIT INFO
# Provides: nacctd
# Required-Start: $network $syslog
# Required-Stop: $network $syslog
# Default-Start: 3 5
# Default-Stop: 0 1 2 6
# Description: ACCOUNTING daemon
### END INIT INFO
This way the insserv utility can take care of creating the relevant
links at /etc/init.d/rc?.d/. For further details please read the
linux standard base (LSB) specification and take a look at the files
that already come with devil linux. Here the relevant parts of the
LSB specification:
http://www.linuxbase.org/spec/refspecs/LSB_1.3.0/gLSB/gLSB/iniscrptact.html
http://www.linuxbase.org/spec/refspecs/LSB_1.3.0/gLSB/gLSB/initscrcomconv.html
http://www.linuxbase.org/spec/refspecs/LSB_1.3.0/gLSB/gLSB/facilname.html
Note: I don't have to stress the fact that you have to replace
netacct-mysql/nacctd with the name of the software package you're
going to add, do I ? ;-)
For further questions please don't hesitate to ask, but please on
the developer mailing list.
--
MfG / Regards
Friedrich Lobenstock
____________________________________________________________________
Friedrich Lobenstock Linux Services Lobenstock
URL: http://www.lsl.at/ Email: fl...@fl...
____________________________________________________________________
|