[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#42816] [PATCH] guix-install.sh: Add support for openrc
From: |
Tobias Geerinckx-Rice |
Subject: |
[bug#42816] [PATCH] guix-install.sh: Add support for openrc |
Date: |
Tue, 11 Aug 2020 23:26:55 +0200 |
Morgan,
Morgan.J.Smith@outlook.com 写道:
* etc/guix-install.sh: Add support for openrc
\o/ thanks!
I also removed the --warning=no-timestamp tar flag
My understanding was that this silenced a scary but harmless
warning from older (GNU?) tar versions. I'm happy to see it go if
it actually breaks others.
and changed grep to use
extended regex instead of perl regex since these flags where not
supported on
the alpine linux image I was using to test (3.12.0-x86_64).
Both Alpine compatibility changes are very welcome but should be
in a separate commit. Keep commits confined to one logical change
whenever possible.
--- a/etc/guix-install.sh
+++ b/etc/guix-install.sh
@@ -150,6 +150,9 @@ chk_init_sys()
_msg "${INF}init system is: sysv-init"
INIT_SYS="sysv-init"
return 0
+ elif [[ $(openrc --version 2>/dev/null) =~ \(OpenRC\) ]];
then
OK. I didn't realise the script still had severe bashism.
+ _msg "${INF}init system is: OpenRC"
+ INIT_SYS="openrc"
Add a ‘return 0’ line here for consistency with the rest of the
code.
latest_ver="$(echo "$bin_ver_ls" \
- | grep -oP "([0-9]{1,2}\.){2}[0-9]{1,2}"
\
+ | grep -oE
"([[:digit:]]{1,2}\.){2}[[:digit:]]{1,2}" \
[[:digit:]] wasn't strictly required here, right? I understand
that it's more ‘correct’ but can't imagine any locale actually
breaking either one.
Is there a practical chance that some ancient-but-supported grep
out there supports [0-9] but *not* [[:digit:]]?
If not: OK!
@@ -384,6 +386,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"
+ ;;
I'll defer to your expertise on the OpenRC incantations :-)
Minor nitpick: ‘; }’.
diff --git a/etc/openrc/guix-daemon b/etc/openrc/guix-daemon
I like the subdirectory.
new file mode 100644
index 0000000000..436673f169
--- /dev/null
+++ b/etc/openrc/guix-daemon
@@ -0,0 +1,11 @@
+#!/sbin/openrc-run
+
+export
GUIX_LOCPATH=/var/guix/profiles/per-user/root/guix-profile/lib/locale
+export LC_ALL=en_US.utf8
+command="/var/guix/profiles/per-user/root/current-guix/bin/guix-daemon"
+command_args="--build-users-group=guixbuild"
+command_background="yes"
+pidfile="/var/run/guix-daemon.pid"
+
+output_log="/var/log/guix-daemon-stdout.log"
+error_log="/var/log/guix-daemon-stderr.log"
Please rename this to guix-daemon.in & add it to nix/local.mk so
we can use @localstatedir@ here.
If you could send a revised patch series it would be much
appreciated; otherwise I'll make the above changes when I get
around to it (...).
Thanks!
T G-R
signature.asc
Description: PGP signature