# GNU Guix --- Functional package management for GNU # Copyright © 2015-2016, 2019-2020, 2022-2023 Ludovic Courtès # Copyright © 2019 Simon Tournier # # This file is part of GNU Guix. # # GNU Guix is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 3 of the License, or (at # your option) any later version. # # GNU Guix is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with GNU Guix. If not, see . # # Test the 'guix graph' command-line utility. # module_dir="t-guix-graph-$$" mkdir "$module_dir" tmpfile1="$module_dir/t-guix-graph1-$$" tmpfile2="$module_dir/t-guix-graph2-$$" trap 'rm -r "$module_dir"' EXIT cat > "$module_dir/foo.scm"< "$tmpfile1" guix graph -t references `guix build guile-bootstrap` > "$tmpfile2" cmp "$tmpfile1" "$tmpfile2" # XXX: Filter the file names in the graph to work around the fact that we get # a mixture of relative and absolute file names. guix graph -t derivation coreutils > "$tmpfile1" guix graph -t derivation `guix build -d coreutils` > "$tmpfile2" cmp "$tmpfile1" "$tmpfile2" # Try package transformation options. guix graph git | grep 'label = "openssl' guix graph git --with-input=openssl=libressl | grep 'label = "libressl' guix graph git --with-input=openssl=libressl | grep 'label = "openssl' && false # Try --load-path guix graph -L $module_dir dummy | grep 'label = "dummy' # Displaying shortest paths (or lack thereof). guix graph --path emacs vim && false path="\ emacs cairo gobject-introspection libffi" test "`guix graph --path emacs libffi | cut -d '@' -f1`" = "$path" # At the derivation level, there's a direct path because libffi is propagated # via gtk+. test "`guix graph --path -t derivation emacs libffi | wc -l`" -ge 2 on.conf.in?id=d11b96eb5493231a5a35045505ff8ae8aa746b8e'>etc: Add explicit ‘--substitute-urls’ in guix-daemon service files.Ludovic Courtès 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 2021-07-07guix-install.sh: Prompt for configuring substitutes discovery.Maxim Cournoyer Also ensure prompt_yes_no always print the message with a trailing space, which is more pleasing to the eye. * etc/guix-daemon.conf.in <--discover=no>: New guix-daemon option. * etc/guix-daemon.service.in: Likewise. * etc/init.d/guix-daemon.in: Likewise. * etc/openrc/guix-daemon.in: Likewise. * etc/guix-install.sh (configure_substitute_discovery): New procedure. (sys_enable_guix_daemon): Ask the user whether automatic substitute discovery should be enabled. Set the '--discover' argument accordingly. (prompt_yes_no): Add a trailing space to the message. (sys_authorize_build_farms): Remove trailing space from the message argument. * NEWS (Distribution): Add news.