mirror of
https://github.com/privatevoid-net/nix-super.git
synced 2024-11-15 02:36:16 +02:00
Merge pull request #10919 from abathur/macos_sequoia_fixes
install-darwin: fix _nixbld uids for macOS sequoia
This commit is contained in:
commit
a6e6da3b0c
4 changed files with 15 additions and 6 deletions
|
@ -1,6 +1,6 @@
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
((NEW_NIX_FIRST_BUILD_UID=301))
|
((NEW_NIX_FIRST_BUILD_UID=351))
|
||||||
|
|
||||||
id_unavailable(){
|
id_unavailable(){
|
||||||
dscl . list /Users UniqueID | grep -E '\b'"$1"'\b' >/dev/null
|
dscl . list /Users UniqueID | grep -E '\b'"$1"'\b' >/dev/null
|
||||||
|
|
|
@ -4,7 +4,17 @@ set -eu
|
||||||
set -o pipefail
|
set -o pipefail
|
||||||
|
|
||||||
# System specific settings
|
# System specific settings
|
||||||
export NIX_FIRST_BUILD_UID="${NIX_FIRST_BUILD_UID:-301}"
|
# Notes:
|
||||||
|
# - up to macOS Big Sur we used the same GID/UIDs as Linux (30000:30001-32)
|
||||||
|
# - we changed UID to 301 because Big Sur updates failed into recovery mode
|
||||||
|
# we're targeting the 200-400 UID range for role users mentioned in the
|
||||||
|
# usage note for sysadminctl
|
||||||
|
# - we changed UID to 351 because Sequoia now uses UIDs 300-304 for its own
|
||||||
|
# daemon users
|
||||||
|
# - we changed GID to 350 alongside above just because it hides the nixbld
|
||||||
|
# group from the Users & Groups settings panel :)
|
||||||
|
export NIX_FIRST_BUILD_UID="${NIX_FIRST_BUILD_UID:-351}"
|
||||||
|
export NIX_BUILD_GROUP_ID="${NIX_BUILD_GROUP_ID:-350}"
|
||||||
export NIX_BUILD_USER_NAME_TEMPLATE="_nixbld%d"
|
export NIX_BUILD_USER_NAME_TEMPLATE="_nixbld%d"
|
||||||
|
|
||||||
readonly NIX_DAEMON_DEST=/Library/LaunchDaemons/org.nixos.nix-daemon.plist
|
readonly NIX_DAEMON_DEST=/Library/LaunchDaemons/org.nixos.nix-daemon.plist
|
||||||
|
|
|
@ -23,10 +23,10 @@ readonly RED='\033[31m'
|
||||||
# installer allows overriding build user count to speed up installation
|
# installer allows overriding build user count to speed up installation
|
||||||
# as creating each user takes non-trivial amount of time on macos
|
# as creating each user takes non-trivial amount of time on macos
|
||||||
readonly NIX_USER_COUNT=${NIX_USER_COUNT:-32}
|
readonly NIX_USER_COUNT=${NIX_USER_COUNT:-32}
|
||||||
readonly NIX_BUILD_GROUP_ID="${NIX_BUILD_GROUP_ID:-30000}"
|
|
||||||
readonly NIX_BUILD_GROUP_NAME="nixbld"
|
readonly NIX_BUILD_GROUP_NAME="nixbld"
|
||||||
# each system specific installer must set these:
|
# each system specific installer must set these:
|
||||||
# NIX_FIRST_BUILD_UID
|
# NIX_FIRST_BUILD_UID
|
||||||
|
# NIX_BUILD_GROUP_ID
|
||||||
# NIX_BUILD_USER_NAME_TEMPLATE
|
# NIX_BUILD_USER_NAME_TEMPLATE
|
||||||
# Please don't change this. We don't support it, because the
|
# Please don't change this. We don't support it, because the
|
||||||
# default shell profile that comes with Nix doesn't support it.
|
# default shell profile that comes with Nix doesn't support it.
|
||||||
|
@ -530,9 +530,7 @@ It seems the build group $NIX_BUILD_GROUP_NAME already exists, but
|
||||||
with the UID $primary_group_id. This script can't really handle
|
with the UID $primary_group_id. This script can't really handle
|
||||||
that right now, so I'm going to give up.
|
that right now, so I'm going to give up.
|
||||||
|
|
||||||
You can fix this by editing this script and changing the
|
You can export NIX_BUILD_GROUP_ID=$primary_group_id and re-run.
|
||||||
NIX_BUILD_GROUP_ID variable near the top to from $NIX_BUILD_GROUP_ID
|
|
||||||
to $primary_group_id and re-run.
|
|
||||||
EOF
|
EOF
|
||||||
else
|
else
|
||||||
row " Exists" "Yes"
|
row " Exists" "Yes"
|
||||||
|
|
|
@ -5,6 +5,7 @@ set -o pipefail
|
||||||
|
|
||||||
# System specific settings
|
# System specific settings
|
||||||
export NIX_FIRST_BUILD_UID="${NIX_FIRST_BUILD_UID:-30001}"
|
export NIX_FIRST_BUILD_UID="${NIX_FIRST_BUILD_UID:-30001}"
|
||||||
|
export NIX_BUILD_GROUP_ID="${NIX_BUILD_GROUP_ID:-30000}"
|
||||||
export NIX_BUILD_USER_NAME_TEMPLATE="nixbld%d"
|
export NIX_BUILD_USER_NAME_TEMPLATE="nixbld%d"
|
||||||
|
|
||||||
readonly SERVICE_SRC=/lib/systemd/system/nix-daemon.service
|
readonly SERVICE_SRC=/lib/systemd/system/nix-daemon.service
|
||||||
|
|
Loading…
Reference in a new issue