Add 'guix-daemon.service' file for systemd.
* etc/guix-daemon.service.in: New file, provided by Ricardo Wurmus. * daemon.am (CLEANFILES): Add etc/guix-daemon.service. (systemdservicedir, nodist_systemdservice_DATA): New variables. (EXTRA_DIST): Add etc/guix-daemon.service.in. * doc/guix.texi (Binary Installation, Build Environment Setup): Mention 'guix-daemon.service'.master
parent
64720891ae
commit
d2825c9614
|
@ -125,3 +125,4 @@ GTAGS
|
|||
/doc/os-config-bare-bones.texi
|
||||
/doc/os-config-desktop.texi
|
||||
/doc/*.1
|
||||
/etc/guix-daemon.service
|
||||
|
|
15
daemon.am
15
daemon.am
|
@ -21,7 +21,7 @@
|
|||
#
|
||||
|
||||
BUILT_SOURCES += nix/libstore/schema.sql.hh
|
||||
CLEANFILES += $(BUILT_SOURCES)
|
||||
CLEANFILES += $(BUILT_SOURCES) etc/guix-daemon.service
|
||||
|
||||
noinst_LIBRARIES = libformat.a libutil.a libstore.a
|
||||
|
||||
|
@ -181,10 +181,21 @@ endif BUILD_DAEMON_OFFLOAD
|
|||
nodist_libexec_SCRIPTS = \
|
||||
nix/scripts/guix-authenticate
|
||||
|
||||
# The '.service' file for systemd.
|
||||
systemdservicedir = $(libdir)/systemd/system
|
||||
nodist_systemdservice_DATA = etc/guix-daemon.service
|
||||
|
||||
etc/guix-daemon.service: etc/guix-daemon.service.in \
|
||||
$(top_builddir)/config.status
|
||||
$(SED) -e 's|@''bindir''@|$(bindir)|' < \
|
||||
"etc/guix-daemon.service.in" > "$@.tmp"
|
||||
mv "$@.tmp" "$@"
|
||||
|
||||
EXTRA_DIST += \
|
||||
nix/libstore/schema.sql \
|
||||
nix/AUTHORS \
|
||||
nix/COPYING
|
||||
nix/COPYING \
|
||||
etc/guix-daemon.service.in
|
||||
|
||||
AM_TESTS_ENVIRONMENT += \
|
||||
top_builddir="$(abs_top_builddir)"
|
||||
|
|
|
@ -330,6 +330,10 @@ Run the daemon:
|
|||
# ~root/.guix-profile/bin/guix-daemon --build-users-group=guixbuild
|
||||
@end example
|
||||
|
||||
On hosts using the systemd init system, drop
|
||||
@file{~root/.guix-profile/lib/systemd/system/guix-daemon.service} in
|
||||
@file{/etc/systemd/system}.
|
||||
|
||||
@item
|
||||
Make the @command{guix} command available to other users on the machine,
|
||||
for instance with:
|
||||
|
@ -512,8 +516,12 @@ Bash syntax and the @code{shadow} commands):
|
|||
@noindent
|
||||
The number of build users determines how many build jobs may run in
|
||||
parallel, as specified by the @option{--max-jobs} option
|
||||
(@pxref{Invoking guix-daemon, @option{--max-jobs}}).
|
||||
The @code{guix-daemon} program may then be run as @code{root} with:
|
||||
(@pxref{Invoking guix-daemon, @option{--max-jobs}}). The
|
||||
@code{guix-daemon} program may then be run as @code{root} with the
|
||||
following command@footnote{If your machine uses the systemd init system,
|
||||
dropping the @file{@var{prefix}/lib/systemd/system/guix-daemon.service}
|
||||
file in @file{/etc/systemd/system} will ensure that
|
||||
@command{guix-daemon} is automatically started.}:
|
||||
|
||||
@example
|
||||
# guix-daemon --build-users-group=guixbuild
|
||||
|
|
|
@ -0,0 +1,15 @@
|
|||
# This is a "service unit file" for the systemd init system to launch
|
||||
# 'guix-daemon'. Drop it in /etc/systemd/system or similar to have
|
||||
# 'guix-daemon' automatically started.
|
||||
|
||||
[Unit]
|
||||
Description=Build daemon for GNU Guix
|
||||
|
||||
[Service]
|
||||
ExecStart=@bindir@/guix-daemon --build-users-group=guixbuild
|
||||
RemainAfterExit=yes
|
||||
StandardOutput=syslog
|
||||
StandardError=syslog
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
Reference in New Issue