GNU bug report logs -
#76082
[PATCH 0/9] Improve profile initialization on foreign distros plus misc improvements
Previous Next
Reported by: Liam Hupfer <liam <at> hpfr.net>
Date: Thu, 6 Feb 2025 04:09:02 UTC
Severity: normal
Tags: patch
Done: Ludovic Courtès <ludo <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
Message #32 received at 76082 <at> debbugs.gnu.org (full text, mbox):
Previously, the check came after guix_get_bin. There’s no need to fetch
the rather large release archive if there’s an existing installation, so
check first. Refactor the check into a function similar to other
preflight checks.
* etc/guix-install.sh: Check for existing installation before
downloading.
Change-Id: I5506fb1cacdc88bd6355e8dfa1f690acf7886c1f
---
etc/guix-install.sh | 24 ++++++++++++++----------
1 file changed, 14 insertions(+), 10 deletions(-)
diff --git a/etc/guix-install.sh b/etc/guix-install.sh
index 7a731962b3..297a726ad6 100755
--- a/etc/guix-install.sh
+++ b/etc/guix-install.sh
@@ -315,6 +315,19 @@ chk_sys_nscd()
fi
}
+chk_existing()
+{ # Avoid clobbering existing installations.
+ _debug "--- [ ${FUNCNAME[0]} ] ---"
+
+ if [[ -e /var/guix && -e /gnu ]]; then
+ if [ -n "$GUIX_ALLOW_OVERWRITE" ]; then
+ _msg_warn "Overwriting existing installation!"
+ else
+ die "A previous Guix installation was found. Refusing to overwrite."
+ fi
+ fi
+}
+
# Configure substitute discovery according to user's preferences.
# $1 is the installed service file to edit.
configure_substitute_discovery() {
@@ -393,16 +406,6 @@ sys_create_store()
local pkg="$1"
local tmp_path="$2"
- _debug "--- [ ${FUNCNAME[0]} ] ---"
-
- if [[ -e /var/guix && -e /gnu ]]; then
- if [ -n "$GUIX_ALLOW_OVERWRITE" ]; then
- _msg_warn "Overwriting existing installation!"
- else
- die "A previous Guix installation was found. Refusing to overwrite."
- fi
- fi
-
cd "$tmp_path"
_msg_info "Installing /var/guix and /gnu..."
# Strip (skip) the leading ‘.’ component, which fails on read-only ‘/’.
@@ -875,6 +878,7 @@ main_install()
chk_gpg_keyring
chk_sys_arch
chk_sys_nscd
+ chk_existing
_msg_info "system is ${ARCH_OS}"
--
2.47.1
This bug report was last modified 85 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.