From: "Ludovic Courtès" <ludo@gnu.org>
To: 71287@debbugs.gnu.org
Cc: "Ludovic Courtès" <ludo@gnu.org>
Subject: [bug#71287] [PATCH] etc: Add explicit ‘--substitute-urls’ in guix-daemon service files.
Date: Fri, 31 May 2024 11:12:45 +0200 [thread overview]
Message-ID: <da7abc28c83819ae345976587e5402d960fb288b.1717146657.git.ludo@gnu.org> (raw)
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
---
config-daemon.ac | 7 ++++---
etc/guix-daemon.conf.in | 2 +-
etc/guix-daemon.service.in | 3 ++-
etc/init.d/guix-daemon.in | 4 +++-
nix/local.mk | 17 ++++++++++-------
5 files changed, 20 insertions(+), 13 deletions(-)
Hello!
The goal is to improve transparency: one will now easily see in
their .service file (or similar) where the URLs are, allowing them
to add new URLs without first having to look up the Guix manual for
the right option and then the systemd (or similar) manual for the
right syntax.
Thoughts?
Ludo’.
diff --git a/config-daemon.ac b/config-daemon.ac
index 9188f93bda8..9854f1d694f 100644
--- a/config-daemon.ac
+++ b/config-daemon.ac
@@ -106,12 +106,13 @@ if test "x$guix_build_daemon" = "xyes"; then
dnl Determine the appropriate default list of substitute URLs (GnuTLS
dnl is required so we can default to 'https'.)
- guix_substitute_urls="https://bordeaux.guix.gnu.org https://ci.guix.gnu.org"
+ GUIX_SUBSTITUTE_URLS="https://bordeaux.guix.gnu.org https://ci.guix.gnu.org"
AC_MSG_CHECKING([for default substitute URLs])
- AC_MSG_RESULT([$guix_substitute_urls])
+ AC_MSG_RESULT([$GUIX_SUBSTITUTE_URLS])
+ AC_SUBST([GUIX_SUBSTITUTE_URLS])
- AC_DEFINE_UNQUOTED([GUIX_SUBSTITUTE_URLS], ["$guix_substitute_urls"],
+ AC_DEFINE_UNQUOTED([GUIX_SUBSTITUTE_URLS], ["$GUIX_SUBSTITUTE_URLS"],
[Default list of substitute URLs used by 'guix-daemon'.])
dnl Check for Guile-SSH, which is required by 'guix offload'.
diff --git a/etc/guix-daemon.conf.in b/etc/guix-daemon.conf.in
index fb681d1f802..aa368d6272c 100644
--- a/etc/guix-daemon.conf.in
+++ b/etc/guix-daemon.conf.in
@@ -7,4 +7,4 @@ start on runlevel [2345]
stop on runlevel [016]
-exec @localstatedir@/guix/profiles/per-user/root/current-guix/bin/guix-daemon --build-users-group=guixbuild --discover=no
+exec @localstatedir@/guix/profiles/per-user/root/current-guix/bin/guix-daemon --build-users-group=guixbuild --discover=no --substitute-urls='@GUIX_SUBSTITUTE_URLS@'
diff --git a/etc/guix-daemon.service.in b/etc/guix-daemon.service.in
index 5e75379b5e4..5c43d9b7f1b 100644
--- a/etc/guix-daemon.service.in
+++ b/etc/guix-daemon.service.in
@@ -7,7 +7,8 @@ Description=Build daemon for GNU Guix
[Service]
ExecStart=@localstatedir@/guix/profiles/per-user/root/current-guix/bin/guix-daemon \
- --build-users-group=guixbuild --discover=no
+ --build-users-group=guixbuild --discover=no \
+ --substitute-urls='@GUIX_SUBSTITUTE_URLS@'
Environment='GUIX_LOCPATH=@localstatedir@/guix/profiles/per-user/root/guix-profile/lib/locale' LC_ALL=en_US.utf8
StandardOutput=journal
StandardError=journal
diff --git a/etc/init.d/guix-daemon.in b/etc/init.d/guix-daemon.in
index b7d4bb72bbb..913210a5434 100644
--- a/etc/init.d/guix-daemon.in
+++ b/etc/init.d/guix-daemon.in
@@ -36,7 +36,9 @@ start)
-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
+ --build-users-group=guixbuild --discover=no \
+ --substitute-urls='@GUIX_SUBSTITUTE_URLS@'
+
fi
;;
stop)
diff --git a/nix/local.mk b/nix/local.mk
index 44a26dd2c8f..8a2b2b88e86 100644
--- a/nix/local.mk
+++ b/nix/local.mk
@@ -1,5 +1,5 @@
# GNU Guix --- Functional package management for GNU
-# Copyright © 2012, 2013, 2014, 2015, 2016, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
+# Copyright © 2012-2016, 2018-2020, 2024 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
# Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
#
@@ -166,8 +166,9 @@ etc/%.mount: etc/%.mount.in \
etc/guix-%.service: etc/guix-%.service.in \
$(top_builddir)/config.status
$(AM_V_GEN)$(MKDIR_P) "`dirname $@`"; \
- $(SED) -e 's|@''localstatedir''@|$(localstatedir)|' < \
- "$<" > "$@.tmp"; \
+ $(SED) -e 's|@''localstatedir''@|$(localstatedir)|' \
+ -e 's|@''GUIX_SUBSTITUTE_URLS''@|$(GUIX_SUBSTITUTE_URLS)|' \
+ < "$<" > "$@.tmp"; \
mv "$@.tmp" "$@"
# The service script for sysvinit.
@@ -177,8 +178,9 @@ nodist_sysvinitservice_DATA = etc/init.d/guix-daemon
etc/init.d/guix-daemon: etc/init.d/guix-daemon.in \
$(top_builddir)/config.status
$(AM_V_GEN)$(MKDIR_P) "`dirname $@`"; \
- $(SED) -e 's|@''localstatedir''@|$(localstatedir)|' < \
- "$<" > "$@.tmp"; \
+ $(SED) -e 's|@''localstatedir''@|$(localstatedir)|' \
+ -e 's|@''GUIX_SUBSTITUTE_URLS''@|$(GUIX_SUBSTITUTE_URLS)|' \
+ < "$<" > "$@.tmp"; \
mv "$@.tmp" "$@"
# The service script for openrc.
@@ -199,8 +201,9 @@ nodist_upstartjob_DATA = etc/guix-daemon.conf etc/guix-publish.conf
etc/guix-%.conf: etc/guix-%.conf.in \
$(top_builddir)/config.status
$(AM_V_GEN)$(MKDIR_P) "`dirname $@`"; \
- $(SED) -e 's|@''localstatedir''@|$(localstatedir)|' < \
- "$<" > "$@.tmp"; \
+ $(SED) -e 's|@''localstatedir''@|$(localstatedir)|' \
+ -e 's|@''GUIX_SUBSTITUTE_URLS''@|$(GUIX_SUBSTITUTE_URLS)|' \
+ < "$<" > "$@.tmp"; \
mv "$@.tmp" "$@"
CLEANFILES += \
base-commit: cca25a67693bb68a1884a081b415a43fad1e8641
--
2.41.0
next reply other threads:[~2024-05-31 9:14 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-05-31 9:12 Ludovic Courtès [this message]
2024-06-26 22:22 ` bug#71287: [PATCH] etc: Add explicit ‘--substitute-urls’ in guix-daemon service files Ludovic Courtès
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=da7abc28c83819ae345976587e5402d960fb288b.1717146657.git.ludo@gnu.org \
--to=ludo@gnu.org \
--cc=71287@debbugs.gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).