diff options
author | Morgan Smith <Morgan.J.Smith@outlook.com> | 2020-09-17 13:03:09 +0200 |
---|---|---|
committer | Tobias Geerinckx-Rice <me@tobias.gr> | 2020-09-17 14:10:42 +0200 |
commit | cabac732deffafc796537658a6c33c6c4aec821e (patch) | |
tree | 98ec099c50b8b5dd1c6f682564fa239599c984ca /etc/guix-install.sh | |
parent | f72bafe32d539ddc4c53bc6ff5db04d3138ff818 (diff) | |
download | guix-cabac732deffafc796537658a6c33c6c4aec821e.tar guix-cabac732deffafc796537658a6c33c6c4aec821e.tar.gz |
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>
Diffstat (limited to 'etc/guix-install.sh')
-rwxr-xr-x | etc/guix-install.sh | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/etc/guix-install.sh b/etc/guix-install.sh index 9768f1c620..eb7205a261 100755 --- a/etc/guix-install.sh +++ b/etc/guix-install.sh @@ -4,6 +4,7 @@ # Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> # Copyright © 2018 Efraim Flashner <efraim@flashner.co.il> # Copyright © 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> +# Copyright © 2020 Morgan Smith <Morgan.J.Smith@outlook.com> # # This file is part of GNU Guix. # @@ -150,6 +151,10 @@ chk_init_sys() _msg "${INF}init system is: sysv-init" INIT_SYS="sysv-init" return 0 + elif [[ $(openrc --version 2>/dev/null) =~ \(OpenRC\) ]]; then + _msg "${INF}init system is: OpenRC" + INIT_SYS="openrc" + return 0 else INIT_SYS="NA" _err "${ERR}Init system could not be detected." @@ -383,6 +388,16 @@ sys_enable_guix_daemon() service guix-daemon start; } && _msg "${PAS}enabled Guix daemon via sysv" ;; + openrc) + { mkdir -p /etc/init.d; + cp "${ROOT_HOME}/.config/guix/current/etc/openrc/guix-daemon" \ + /etc/init.d/guix-daemon; + chmod 775 /etc/init.d/guix-daemon; + + rc-update add guix-daemon default && + rc-service guix-daemon start; } && + _msg "${PAS}enabled Guix daemon via OpenRC" + ;; NA|*) _msg "${ERR}unsupported init system; run the daemon manually:" echo " ${ROOT_HOME}/.config/guix/current/bin/guix-daemon --build-users-group=guixbuild" |