Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Core Darwin Module

Everything configured by _darwin.nix, imported automatically by mkHost for Darwin platforms.

Nixpkgs

SettingValue
allowUnfreetrue
allowBrokenfalse
allowInsecurefalse
allowUnsupportedSystemtrue

Nix settings

SettingValue
nix.enablefalse (Determinate installer compatible)
trusted-users["@admin" "<userName>"]
substituters["https://nix-community.cachix.org" "https://cache.nixos.org"]
trusted-public-keysnix-community + cache.nixos.org keys
auto-optimise-storetrue
experimental-featuresnix-command flakes

Programs

ProgramSetting
zshEnabled, completion disabled (managed by HM)

Users

SettingValue
users.users.<userName>.name<userName>
users.users.<userName>.homehostSpec.home
users.users.<userName>.isHiddenfalse
users.users.<userName>.shellzsh

TouchID sudo

SettingValue
security.pam.services.sudo_local.touchIdAuthtrue
PAM configpam_reattach.so (ignore_ssh) + pam_tid.so

TouchID works for sudo in terminal sessions, including through tmux via pam_reattach.

System defaults

NSGlobalDomain

KeyValue
AppleShowAllExtensionstrue
ApplePressAndHoldEnabledfalse
KeyRepeat2
InitialKeyRepeat15
com.apple.mouse.tapBehavior1
com.apple.sound.beep.feedback0

Dock

KeyValue
autohidetrue
show-recentsfalse
launchanimtrue
orientationbottom
tilesize48

Finder

KeyValue
AppleShowAllExtensionstrue
AppleShowAllFilestrue
ShowPathbartrue
_FXSortFoldersFirsttrue
_FXShowPosixPathInTitlefalse

Trackpad

KeyValue
Clickingtrue
TrackpadThreeFingerDragtrue

Dock management

The module includes a local.dock option for declarative Dock management using dockutil:

OptionTypeDefaultDescription
local.dock.enablebooltrueEnable dock management
local.dock.entrieslistOf submodule– (readOnly)Dock entries

Each entry has:

Sub-optionTypeDefault
pathstr
sectionstr"apps"
optionsstr""

The activation script diffs current Dock state against the declared entries and only resets when they differ.

Other

SettingValue
system.stateVersion4
system.checks.verifyNixPathfalse
system.primaryUser<userName>
hostSpec.isDarwintrue