diff options
author | Eelco Dolstra <edolstra@gmail.com> | 2019-05-01T13·48+0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-05-01T13·48+0200 |
commit | 989cb3777753024072160776ea37348689b89d44 (patch) | |
tree | 7c39520de3655e5ca4c4aa167ab58c1cc3e2e1f9 | |
parent | 83f2b110cecf50877ce1585c698dbed6dd225562 (diff) | |
parent | b9567aa8b6f935522d1037377e0e5205a7529fd8 (diff) |
Merge pull request #2679 from bjornfor/offline-install
install script: don't abort when "nix-channel --update" fails
-rw-r--r-- | scripts/install-multi-user.sh | 10 | ||||
-rw-r--r-- | scripts/install-nix-from-closure.sh | 5 |
2 files changed, 13 insertions, 2 deletions
diff --git a/scripts/install-multi-user.sh b/scripts/install-multi-user.sh index 4b65783a20ff..c89e18b5116d 100644 --- a/scripts/install-multi-user.sh +++ b/scripts/install-multi-user.sh @@ -240,10 +240,16 @@ EOF } trap finish_fail EXIT +channel_update_failed=0 function finish_success { finish_cleanup ok "Alright! We're done!" + if [ "x$channel_update_failed" = x1 ]; then + echo "" + echo "But fetching the nixpkgs channel failed. (Are you offline?)" + echo "To try again later, run \"sudo -i nix-channel --update nixpkgs\"." + fi cat <<EOF Before Nix will work in your existing shells, you'll need to close @@ -734,7 +740,9 @@ setup_default_profile() { # otherwise it will be lost in environments where sudo doesn't pass # all the environment variables by default. _sudo "to update the default channel in the default profile" \ - HOME="$ROOT_HOME" NIX_SSL_CERT_FILE="$NIX_SSL_CERT_FILE" "$NIX_INSTALLED_NIX/bin/nix-channel" --update nixpkgs + HOME="$ROOT_HOME" NIX_SSL_CERT_FILE="$NIX_SSL_CERT_FILE" "$NIX_INSTALLED_NIX/bin/nix-channel" --update nixpkgs \ + || channel_update_failed=1 + } diff --git a/scripts/install-nix-from-closure.sh b/scripts/install-nix-from-closure.sh index fc633fa2337e..7810a6461be3 100644 --- a/scripts/install-nix-from-closure.sh +++ b/scripts/install-nix-from-closure.sh @@ -132,7 +132,10 @@ if ! $nix/bin/nix-channel --list | grep -q "^nixpkgs "; then $nix/bin/nix-channel --add https://nixos.org/channels/nixpkgs-unstable fi if [ -z "$_NIX_INSTALLER_TEST" ]; then - $nix/bin/nix-channel --update nixpkgs + if ! $nix/bin/nix-channel --update nixpkgs; then + echo "Fetching the nixpkgs channel failed. (Are you offline?)" + echo "To try again later, run \"nix-channel --update nixpkgs\"." + fi fi added= |