d11b96eb54
Having substitute URLs explicitly listed in the service startup file makes it clearer what should be modified to permanently change the list of substitute URLs. * config-daemon.ac: Rename ‘guix_substitute_urls’ to ‘GUIX_SUBSTITUTE_URLS’ and substitute it. * nix/local.mk (etc/guix-%.service, etc/init.d/guix-daemon) (etc/guix-%.conf): Substitute it. * etc/guix-daemon.conf.in, etc/guix-daemon.service.in, etc/init.d/guix-daemon.in: Add an explicit ‘--substitute-urls’ option. Change-Id: Ie491b7fab5c42e54dca582801c03805a85de2bf9
81 lines
1.8 KiB
Bash
81 lines
1.8 KiB
Bash
#!/bin/bash
|
|
### BEGIN INIT INFO
|
|
# Provides: guix-daemon
|
|
# Required-Start: $remote_fs $syslog
|
|
# Required-Stop: $remote_fs $syslog
|
|
# Default-Start: 2 3 4 5
|
|
# Default-Stop: 0 1 6
|
|
# Short-Description: Guix build daemon
|
|
# Description: Provides a daemon that does builds for Guix
|
|
### END INIT INFO
|
|
|
|
set -e
|
|
mkdir -p "/var/run"
|
|
if [ ! -f "@localstatedir@/guix/profiles/per-user/root/current-guix/bin/guix-daemon" ]
|
|
then
|
|
exit 5
|
|
fi
|
|
|
|
case "$1" in
|
|
start)
|
|
if [ -f "/var/run/guix-daemon.pid" ]
|
|
then
|
|
if pgrep -F "/var/run/guix-daemon.pid" guix-daemon
|
|
then
|
|
exit 0
|
|
else
|
|
echo "guix-daemon has a stale pid file" >&2
|
|
exit 1
|
|
fi
|
|
else
|
|
daemonize \
|
|
-a \
|
|
-e "/var/log/guix-daemon-stderr.log" \
|
|
-o "/var/log/guix-daemon-stdout.log" \
|
|
-E GUIX_LOCPATH=@localstatedir@/guix/profiles/per-user/root/guix-profile/lib/locale \
|
|
-E LC_ALL=en_US.utf8 \
|
|
-p "/var/run/guix-daemon.pid" \
|
|
@localstatedir@/guix/profiles/per-user/root/current-guix/bin/guix-daemon \
|
|
--build-users-group=guixbuild --discover=no \
|
|
--substitute-urls='@GUIX_SUBSTITUTE_URLS@'
|
|
|
|
fi
|
|
;;
|
|
stop)
|
|
if [ -f "/var/run/guix-daemon.pid" ]
|
|
then
|
|
pkill -F "/var/run/guix-daemon.pid" guix-daemon || {
|
|
exit 1
|
|
}
|
|
rm -f "/var/run/guix-daemon.pid"
|
|
exit 0
|
|
else
|
|
exit 0
|
|
fi
|
|
;;
|
|
status)
|
|
if [ -f "/var/run/guix-daemon.pid" ]
|
|
then
|
|
if pgrep -F "/var/run/guix-daemon.pid" guix-daemon
|
|
then
|
|
echo "guix-daemon is running"
|
|
exit 0
|
|
else
|
|
echo "guix-daemon has a stale pid file"
|
|
exit 1
|
|
fi
|
|
else
|
|
echo "guix-daemon is not running"
|
|
exit 3
|
|
fi
|
|
;;
|
|
restart|force-reload)
|
|
"$0" stop
|
|
"$0" start
|
|
;;
|
|
*)
|
|
echo "Usage: $0 (start|stop|status|restart|force-reload)"
|
|
exit 3
|
|
;;
|
|
esac
|