diff options
author | Mathieu Othacehe <othacehe@gnu.org> | 2020-12-04 11:33:16 +0100 |
---|---|---|
committer | Mathieu Othacehe <othacehe@gnu.org> | 2020-12-11 21:37:07 +0100 |
commit | 8361817bf693742757b096468198626f297bb09e (patch) | |
tree | fe2008436678b49cb81f66811345e0474da2bafe /gnu/installer/newt | |
parent | 6ca66f641485cc5a06ba7d34b9c36b738ea1d654 (diff) | |
download | guix-8361817bf693742757b096468198626f297bb09e.tar guix-8361817bf693742757b096468198626f297bb09e.tar.gz |
install: Discover local substitute servers.
* gnu/installer/substitutes.scm: New file.
* gnu/installer/newt/substitutes.scm: New file.
* gnu/local.mk (INSTALLER_MODULES): Add them.
* po/guix/POTFILES.in: Add gnu/installer/newt/substitutes.scm.
* gnu/installer/proxy.scm (with-silent-shepherd): Move to ...
* gnu/installer/utils.scm: ... here.
* gnu/installer/record.scm (<installer>)[substitutes-page]: New field.
* gnu/installer/newt.scm (substitutes-page): New procedure,
(newt-installer): register it.
* gnu/installer.scm (installer-steps): Add "substitutes-page" step.
* gnu/system/install.scm (%installation-services): Add avahi-service-type and
enable substitute server discover in guix-service-type.
[<name-service-switch>]: Set it to %mdns-host-lookup-nss.
Diffstat (limited to 'gnu/installer/newt')
-rw-r--r-- | gnu/installer/newt/substitutes.scm | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/gnu/installer/newt/substitutes.scm b/gnu/installer/newt/substitutes.scm new file mode 100644 index 0000000000..938cb1a53b --- /dev/null +++ b/gnu/installer/newt/substitutes.scm @@ -0,0 +1,43 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2020 Mathieu Othacehe <othacehe@gnu.org> +;;; +;;; 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 <http://www.gnu.org/licenses/>. + +(define-module (gnu installer newt substitutes) + #:use-module (gnu installer substitutes) + #:use-module (gnu installer utils) + #:use-module (guix i18n) + #:use-module (newt) + #:use-module (ice-9 match) + #:export (run-substitutes-page)) + +(define* (run-substitutes-page) + (match (current-clients) + (() + (case (choice-window + (G_ "Substitute server discovery.") + (G_ "Enable") (G_ "Disable") + (G_ " By turning this option on, you allow Guix to fetch \ +substitutes (pre-built binaries) during installation from servers \ +discovered on your local area network (LAN) in addition to the official \ +server. This can increase download throughput. + + There are no security risks: only genuine substitutes may be retrieved from \ +those servers. However, eavesdroppers on your LAN may be able to see what \ +software you are installing.")) + ((1) (enable-discovery)) + ((2) (disable-discovery)))) + (_ #f))) |