summaryrefslogtreecommitdiffstats
path: root/scripts
diff options
context:
space:
mode:
authorDaiderd Jordan <daiderd@gmail.com>2020-02-13 12:57:35 +0100
committerDaiderd Jordan <daiderd@gmail.com>2020-05-21 19:58:10 +0200
commit083bb3bbfcdccebd06bde81a66f158d51ed6e455 (patch)
treef038fc5261912d0606ffad1499663ffa84f33b37 /scripts
parent10202628b911980f05fc2c9460995af30f1bcbf3 (diff)
install: show macOS 10.15 message with --daemon
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/create-darwin-volume.sh8
-rw-r--r--scripts/install-nix-from-closure.sh28
2 files changed, 20 insertions, 16 deletions
diff --git a/scripts/create-darwin-volume.sh b/scripts/create-darwin-volume.sh
index f3e0d46f1..d6fb44f43 100755
--- a/scripts/create-darwin-volume.sh
+++ b/scripts/create-darwin-volume.sh
@@ -1,8 +1,8 @@
#!/bin/sh
set -e
-root_disks() {
- diskutil list -plist /
+root_disk() {
+ diskutil info -plist /
}
apfs_volumes_for() {
@@ -11,7 +11,7 @@ apfs_volumes_for() {
}
disk_identifier() {
- xpath "/plist/dict/key[text()='WholeDisks']/following-sibling::array[1]/string/text()" 2>/dev/null
+ xpath "/plist/dict/key[text()='ParentWholeDisk']/following-sibling::string[1]/text()" 2>/dev/null
}
volume_get() {
@@ -81,7 +81,7 @@ main() {
sudo mkdir /nix
fi
- disk=$(root_disks | disk_identifier)
+ disk=$(root_disk | disk_identifier)
volume=$(find_nix_volume "$disk")
if [ -z "$volume" ]; then
echo "Creating a Nix Store volume..." >&2
diff --git a/scripts/install-nix-from-closure.sh b/scripts/install-nix-from-closure.sh
index 88275d1f0..7d32bf92e 100644
--- a/scripts/install-nix-from-closure.sh
+++ b/scripts/install-nix-from-closure.sh
@@ -91,9 +91,22 @@ while [ $# -gt 0 ]; do
shift
done
-if [ "$(uname -s)" = "Darwin" ] && [ "$CREATE_DARWIN_VOLUME" = 1 ]; then
- printf '\e[1;31mCreating volume and mountpoint /nix.\e[0m\n'
- "$self/create-darwin-volume.sh"
+if [ "$(uname -s)" = "Darwin" ]; then
+ if [ "$CREATE_DARWIN_VOLUME" = 1 ]; then
+ printf '\e[1;31mCreating volume and mountpoint /nix.\e[0m\n'
+ "$self/create-darwin-volume.sh"
+ fi
+
+ info=$(diskutil info -plist / | xpath "/plist/dict/key[text()='Writable']/following-sibling::true[1]" 2> /dev/null)
+ if ! [ -e $dest ] && [ -n "$info" ]; then
+ (
+ echo ""
+ echo "Installing on macOS >=10.15 requires relocating the store to an apfs volume."
+ echo "Use --create-volume or run the preparation steps manually."
+ echo "See https://nixos.org/nix/manual/#sect-darwin-apfs-volume."
+ echo ""
+ ) >&2
+ fi
fi
if [ "$INSTALL_MODE" = "daemon" ]; then
@@ -113,15 +126,6 @@ if ! [ -e $dest ]; then
echo "directory $dest does not exist; creating it by running '$cmd' using sudo" >&2
if ! sudo sh -c "$cmd"; then
echo "$0: please manually run '$cmd' as root to create $dest" >&2
- if [ "$(uname -s)" = "Darwin" ]; then
- (
- echo ""
- echo "Installing on macOS >=10.15 requires relocating the store to an apfs volume."
- echo "Use --create-volume or run the preparation steps manually."
- echo "See https://nixos.org/nix/manual/#sect-darwin-apfs-volume."
- echo ""
- ) >&2
- fi
exit 1
fi
fi