guix-install.sh: Support OpenRC.

* etc/guix-install.sh (chk_init_sys): Detect OpenRC.
(sys_enable_guix_daemon): Install & enable the Guix daemon on such
systems.
* etc/openrc/guix-daemon.in: New file.
* nix/local.mk: Add a rule for it.
(openrcservicedir, nodist_openrcservice_DATA): New variables.
(CLEANFILES, EXTRA_DIST): Add them.
* .gitignore: Ignore etc/openrc/guix-daemon.

Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
This commit is contained in:
Morgan Smith 2020-09-17 13:03:09 +02:00 committed by Tobias Geerinckx-Rice
parent f72bafe32d
commit cabac732de
No known key found for this signature in database
GPG key ID: 0DB0FF884F556D79
4 changed files with 59 additions and 2 deletions

View file

@ -180,6 +180,17 @@ etc/init.d/guix-daemon: etc/init.d/guix-daemon.in \
"$<" > "$@.tmp"; \
mv "$@.tmp" "$@"
# The service script for openrc.
openrcservicedir = $(sysconfdir)/init.d
nodist_openrcservice_DATA = etc/openrc/guix-daemon
etc/openrc/guix-daemon: etc/openrc/guix-daemon.in \
$(top_builddir)/config.status
$(AM_V_GEN)$(MKDIR_P) "`dirname $@`"; \
$(SED) -e 's|@''localstatedir''@|$(localstatedir)|' < \
"$<" > "$@.tmp"; \
mv "$@.tmp" "$@"
# The '.conf' jobs for Upstart.
upstartjobdir = $(libdir)/upstart/system
nodist_upstartjob_DATA = etc/guix-daemon.conf etc/guix-publish.conf
@ -194,7 +205,8 @@ etc/guix-%.conf: etc/guix-%.conf.in \
CLEANFILES += \
$(nodist_systemdservice_DATA) \
$(nodist_upstartjob_DATA) \
$(nodist_sysvinitservice_DATA)
$(nodist_sysvinitservice_DATA) \
$(nodist_openrcservice_DATA)
EXTRA_DIST += \
%D%/AUTHORS \
@ -203,7 +215,8 @@ EXTRA_DIST += \
etc/guix-daemon.conf.in \
etc/guix-publish.service.in \
etc/guix-publish.conf.in \
etc/init.d/guix-daemon.in
etc/init.d/guix-daemon.in \
etc/openrc/guix-daemon.in
if CAN_RUN_TESTS