diff options
author | Travis A. Everett <travis.a.everett@gmail.com> | 2020-09-11 12:06:01 -0500 |
---|---|---|
committer | Travis A. Everett <travis.a.everett@gmail.com> | 2020-10-19 12:25:52 -0500 |
commit | b719f686a8c8936fe831ce730f28638d8b1e2982 (patch) | |
tree | e6a0c4b094d9a6aebb60096362b5784b96d89927 /scripts | |
parent | 3a8699ac4ffc0d9b611c471e2668e6b22cc65767 (diff) |
fix skipped multi-user install steps on macOS
Some of the changes in #3788 to support non-systemd Nix installs
don't appear to be aware that the darwin installer exists, which
resulted in some skipped steps and inappropriate instructions.
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/install-darwin-multi-user.sh | 7 | ||||
-rw-r--r-- | scripts/install-multi-user.sh | 34 | ||||
-rwxr-xr-x | scripts/install-systemd-multi-user.sh | 45 |
3 files changed, 45 insertions, 41 deletions
diff --git a/scripts/install-darwin-multi-user.sh b/scripts/install-darwin-multi-user.sh index 49076bd5c..a27be2a43 100644 --- a/scripts/install-darwin-multi-user.sh +++ b/scripts/install-darwin-multi-user.sh @@ -37,6 +37,13 @@ poly_service_setup_note() { EOF } +poly_extra_try_me_commands(){ + : +} +poly_extra_setup_instructions(){ + : +} + poly_configure_nix_daemon_service() { _sudo "to set up the nix-daemon as a LaunchDaemon" \ cp -f "/nix/var/nix/profiles/default$PLIST_DEST" "$PLIST_DEST" diff --git a/scripts/install-multi-user.sh b/scripts/install-multi-user.sh index e5cc4d7ed..54edfe40d 100644 --- a/scripts/install-multi-user.sh +++ b/scripts/install-multi-user.sh @@ -71,11 +71,9 @@ uninstall_directions() { subheader "Uninstalling nix:" local step=0 - if [ -e /run/systemd/system ] && poly_service_installed_check; then + if poly_service_installed_check; then step=$((step + 1)) poly_service_uninstall_directions "$step" - else - step=$((step + 1)) fi for profile_target in "${PROFILE_TARGETS[@]}"; do @@ -255,40 +253,20 @@ function finish_success { echo "To try again later, run \"sudo -i nix-channel --update nixpkgs\"." fi - if [ -e /run/systemd/system ]; then - cat <<EOF - -Before Nix will work in your existing shells, you'll need to close -them and open them again. Other than that, you should be ready to go. - -Try it! Open a new terminal, and type: - - $ nix-shell -p nix-info --run "nix-info -m" - -Thank you for using this installer. If you have any feedback, don't -hesitate: - -$(contactme) -EOF - else - cat <<EOF + cat <<EOF Before Nix will work in your existing shells, you'll need to close them and open them again. Other than that, you should be ready to go. Try it! Open a new terminal, and type: - - $ sudo nix-daemon +$(poly_extra_try_me_commands) $ nix-shell -p nix-info --run "nix-info -m" - -Additionally, you may want to add nix-daemon to your init-system. - +$(poly_extra_setup_instructions) Thank you for using this installer. If you have any feedback, don't hesitate: $(contactme) EOF - fi } @@ -725,9 +703,7 @@ main() { setup_default_profile place_nix_configuration - if [ -e /run/systemd/system ]; then - poly_configure_nix_daemon_service - fi + poly_configure_nix_daemon_service trap finish_success EXIT } diff --git a/scripts/install-systemd-multi-user.sh b/scripts/install-systemd-multi-user.sh index e0201d53b..fda5ef600 100755 --- a/scripts/install-systemd-multi-user.sh +++ b/scripts/install-systemd-multi-user.sh @@ -72,24 +72,45 @@ poly_service_setup_note() { EOF } -poly_configure_nix_daemon_service() { - _sudo "to set up the nix-daemon service" \ - systemctl link "/nix/var/nix/profiles/default$SERVICE_SRC" +poly_extra_try_me_commands(){ + if [ -e /run/systemd/system ]; then + : + else + cat <<EOF + $ sudo nix-daemon +EOF + fi +} +poly_extra_setup_instructions(){ + if [ -e /run/systemd/system ]; then + : + else + cat <<EOF +Additionally, you may want to add nix-daemon to your init-system. - _sudo "to set up the nix-daemon socket service" \ - systemctl enable "/nix/var/nix/profiles/default$SOCKET_SRC" +EOF + fi +} - handle_network_proxy +poly_configure_nix_daemon_service() { + if [ -e /run/systemd/system ]; then + _sudo "to set up the nix-daemon service" \ + systemctl link "/nix/var/nix/profiles/default$SERVICE_SRC" + + _sudo "to set up the nix-daemon socket service" \ + systemctl enable "/nix/var/nix/profiles/default$SOCKET_SRC" - _sudo "to load the systemd unit for nix-daemon" \ - systemctl daemon-reload + handle_network_proxy - _sudo "to start the nix-daemon.socket" \ - systemctl start nix-daemon.socket + _sudo "to load the systemd unit for nix-daemon" \ + systemctl daemon-reload - _sudo "to start the nix-daemon.service" \ - systemctl restart nix-daemon.service + _sudo "to start the nix-daemon.socket" \ + systemctl start nix-daemon.socket + _sudo "to start the nix-daemon.service" \ + systemctl restart nix-daemon.service + fi } poly_group_exists() { |