Commit 4e883b88 authored by Julien Muchembled's avatar Julien Muchembled

Debian packaging

parent 212242ff
re6stnet configuration files
Init script only starts 're6stnet' daemon if there is a 're6stnet.conf' file
in this directory containing all parameters to pass to the daemon.
Same for the registry: all parameters must be specified in 're6st-registry.conf'
So for a normal node, you should have the following files:
re6stnet.conf ca.crt cert.crt cert.key dh2048.pem
And if you also host the registry:
re6st-registry.conf ca.key
......@@ -2,4 +2,4 @@ re6stnet (0.1-1) nexedi; urgency=low
* source package automatically created by stdeb 0.6.0+git
-- Guillaume Bury <guillaume.bury@gmail.com> Wed, 01 Aug 2012 15:05:30 +0200
-- Julien Muchembled <jm@jmuchemb.eu> Wed, 05 Sep 2012 16:38:01 +0200
......@@ -7,5 +7,6 @@ Standards-Version: 3.9.1
Package: re6stnet
Architecture: all
Depends: ${misc:Depends}, ${python:Depends}, openvpn, babeld, openssl
Depends: ${misc:Depends}, python (>= 2.6.6-3), python (<< 2.8), python-openssl, openvpn, babeld, iproute, openssl
Recommends: ${python:Recommends}
Description: resilient, scalable, IPv6 network application
#!/bin/sh
### BEGIN INIT INFO
# Provides: #NAME#
# Required-Start: $network $local_fs #DEPENDS#
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
### END INIT INFO
# PATH should only include /usr/* if it runs after the mountnfs.sh script
PATH=/sbin:/usr/sbin:/bin:/usr/bin
NAME=#NAME#
DESC=$NAME
DAEMON=#DAEMON_DIR#/$NAME
CONFDIR=/etc/re6stnet
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
# Exit if the package is not installed or not configured
[ -x $DAEMON -a -r $CONFDIR/$NAME.conf ] || exit 0
# Load the VERBOSE setting and other rcS variables
. /lib/init/vars.sh
# Define LSB log_* functions.
# Depend on lsb-base (>= 3.0-6) to ensure that this file is present.
. /lib/lsb/init-functions
#
# Function that starts the daemon/service
#
do_start()
{
# Return
# 0 if daemon has been started
# 1 if daemon was already running
# 2 if daemon could not be started
set start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON
"$@" --test > /dev/null || return 1
"$@" --make-pidfile --background --chdir $CONFDIR -- @$NAME.conf || return 2
}
#
# Function that stops the daemon/service
#
do_stop()
{
# Return
# 0 if daemon has been stopped
# 1 if daemon was already stopped
# 2 if daemon could not be stopped
# other if a failure occurred
set start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5
"$@" --pidfile $PIDFILE --name $NAME
RETVAL="$?"
[ "$RETVAL" = 2 ] && return 2
rm -f $PIDFILE
# Wait for children to finish too if this is a daemon that forks
# and if the daemon is only ever run from this initscript.
# If the above conditions are not satisfied then add some other code
# that waits for the process to drop all resources that could be
# needed by services started subsequently. A last resort is to
# sleep for some time.
"$@" --oknodo --exec $DAEMON
[ "$?" = 2 ] && return 2
# Many daemons don't delete their pidfiles when they exit.
return "$RETVAL"
}
case "$1" in
start)
[ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC " "$NAME"
do_start
case "$?" in
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
esac
;;
stop)
[ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
do_stop
case "$?" in
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
esac
;;
status)
status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
;;
restart|force-reload)
#
# If the "reload" option is implemented then remove the
# 'force-reload' alias
#
log_daemon_msg "Restarting $DESC" "$NAME"
do_stop
case "$?" in
0|1)
do_start
case "$?" in
0) log_end_msg 0 ;;
1) log_end_msg 1 ;; # Old process is still running
*) log_end_msg 1 ;; # Failed to start
esac
;;
*)
# Failed to stop
log_end_msg 1
;;
esac
;;
*)
#echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2
exit 3
;;
esac
:
#!/bin/sh -e
[ "$DPKG_MAINTSCRIPT_PACKAGE" ]
[ "$1" = purge ] && for d in lib log; do
d=/var/$d/$DPKG_MAINTSCRIPT_PACKAGE
[ ! -d "$d" ] || rm -r "$d" || :
done
#DEBHELPER#
......@@ -3,7 +3,9 @@
MANPAGELIST := $(patsubst %.rst, %.1, $(wildcard docs/*.rst))
# Uncomment this to turn on verbose mode.
export DH_VERBOSE=1
#export DH_VERBOSE=1
INIT=debian/re6stnet/etc/init.d
override_dh_auto_clean:
dh_auto_clean
......@@ -12,8 +14,27 @@ override_dh_auto_clean:
%.1: %.rst
rst2man $< $@
override_dh_install:
dh_install
install -d debian/re6stnet/usr/sbin
mv debian/re6stnet/usr/bin/re6stnet debian/re6stnet/usr/sbin
override_dh_installinit:
install -d $(INIT)
sed 's/#NAME#/re6st-registry/; s/#DEPENDS#//; s,#DAEMON_DIR#,/usr/bin,' \
<debian/init.d >$(INIT)/re6st-registry
sed 's/#NAME#/re6stnet/; s/#DEPENDS#/re6st-registry/; s,#DAEMON_DIR#,/usr/sbin,' \
<debian/init.d >$(INIT)/re6stnet
for x in re6st-registry re6stnet; \
do chmod +x $(INIT)/$$x && dh_installinit --onlyscripts --name=$$x; \
done
install -Dpm 0644 debian/README.conf debian/re6stnet/etc/re6stnet/README
override_dh_installman: $(MANPAGELIST)
dh_installman $^
override_dh_python2:
dh_python2 --no-guessing-deps --depends=pyOpenSSL --recommends=miniupnpc
%:
dh $@ --with python2 --buildsystem=python_distutils
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment