domain/architecture/system/deployment/nix_darwin/setting/effects.bend relies on unsafe/foreign
raw source on the hub · import 0xc4f31b1cf377fad1ed5191443ddd1c20/domain/architecture/system/deployment/nix_darwin/setting/effects.bend as Effects
6 imports
import Base import bend-kit-files@0.1.0.0/files.bend as Fs import ../../../effs/io.bend as X import ../../../plan/type.bend as P import ./type.bend as St import ./ops.bend as StO
Definitions
def read_domains source · line 13 · raw
@ds:List<&2, String> -> @+xs:List<&2, 0xc4f31b1cf377fad1ed5191443ddd1c20/domain/architecture/system/deployment/nix_darwin/setting/type.Setting> -> IO(List<&2, 0xc4f31b1cf377fad1ed5191443ddd1c20/domain/architecture/system/deployment/nix_darwin/setting/type.Setting>)
---- system.defaults: each domain's plist exported once, its options read from the XML ----
def defaults_now source · line 24 · raw
@+xs:List<&2, 0xc4f31b1cf377fad1ed5191443ddd1c20/domain/architecture/system/deployment/nix_darwin/setting/type.Setting> -> IO(List<&2, 0xc4f31b1cf377fad1ed5191443ddd1c20/domain/architecture/system/deployment/nix_darwin/setting/type.Setting>)
The observed values of the options (their values are ignored) that live in a defaults domain.
def power source · line 28 · raw
IO(List<&2, 0xc4f31b1cf377fad1ed5191443ddd1c20/domain/architecture/system/deployment/nix_darwin/setting/type.Setting>)
---- power and names ----
def power_button source · line 34 · raw
IO(List<&2, 0xc4f31b1cf377fad1ed5191443ddd1c20/domain/architecture/system/deployment/nix_darwin/setting/type.Setting>)
power.restartAfterFreeze is left out: only systemsetup reports it, and only to an administrator.
def name source · line 39 · raw
@+option:String -> @+key:String -> IO(List<&2, 0xc4f31b1cf377fad1ed5191443ddd1c20/domain/architecture/system/deployment/nix_darwin/setting/type.Setting>)
def names source · line 44 · raw
IO(List<&2, 0xc4f31b1cf377fad1ed5191443ddd1c20/domain/architecture/system/deployment/nix_darwin/setting/type.Setting>)
def socketfilterfw source · line 52 · raw
@+flag:String -> IO(String)
---- the firewall ----
def firewall_now source · line 55 · raw
IO(0xc4f31b1cf377fad1ed5191443ddd1c20/domain/architecture/system/deployment/nix_darwin/setting/type.Firewall)
def field source · line 64 · raw
@+plist:String -> @+tile:String -> @+f:String -> IO(String)
---- Dock tiles ----
def tiles source · line 69 · raw
@n:Nat -> @+plist:String -> @+key:String -> @+i:Nat -> IO(List<&2, String>)
def dock_list source · line 85 · raw
@+plist:String -> @+key:String -> IO(List<&2, 0xc4f31b1cf377fad1ed5191443ddd1c20/domain/architecture/system/deployment/nix_darwin/setting/type.Setting>)
plutil -extract <array> raw answers the array's length.
def per_service source · line 92 · raw
@ss:List<&2, String> -> @+get:String -> IO(List<&2, String>)
---- network ----
def network source · line 102 · raw
IO(List<&2, 0xc4f31b1cf377fad1ed5191443ddd1c20/domain/architecture/system/deployment/nix_darwin/setting/type.Setting>)
def nix_link source · line 114 · raw
@+path:String -> IO(Bool)
---- security ---- Whether nix-darwin manages a file: it links it to /etc/static.
def security source · line 119 · raw
IO(List<&2, 0xc4f31b1cf377fad1ed5191443ddd1c20/domain/architecture/system/deployment/nix_darwin/setting/type.Setting>)
def keyboard source · line 133 · raw
IO(List<&2, 0xc4f31b1cf377fad1ed5191443ddd1c20/domain/architecture/system/deployment/nix_darwin/setting/type.Setting>)
def names_of source · line 139 · raw
@r:Result<&1, &1, Pair(U32, String), List<&2, String>> -> List<&2, String>
---- startup chime, time zone, primary user, Nix, shells, fonts, SSH ----
def system source · line 146 · raw
IO(List<&2, 0xc4f31b1cf377fad1ed5191443ddd1c20/domain/architecture/system/deployment/nix_darwin/setting/type.Setting>)
def dscl source · line 170 · raw
@+record:String -> @+attr:String -> IO(String)
---- users and groups ----
def user_list source · line 175 · raw
@ns:List<&2, String> -> IO(List<&2, 0xc4f31b1cf377fad1ed5191443ddd1c20/domain/architecture/system/deployment/nix_darwin/setting/type.Setting>)
def group_list source · line 190 · raw
@ns:List<&2, String> -> IO(List<&2, 0xc4f31b1cf377fad1ed5191443ddd1c20/domain/architecture/system/deployment/nix_darwin/setting/type.Setting>)
def users source · line 202 · raw
IO(List<&2, 0xc4f31b1cf377fad1ed5191443ddd1c20/domain/architecture/system/deployment/nix_darwin/setting/type.Setting>)
def regular source · line 212 · raw
@k:0x902b9f92801b87d6be0bcd03919d01bb/files.FileType -> Bool
---- launchd files, read only: each is named by its content hash, but not copied into the system's nix/launch/ (the old import did), so a declaration that uses one must copy it there itself ----
def is_file source · line 219 · raw
@r:Result<&1, &1, Pair(U32, String), 0x902b9f92801b87d6be0bcd03919d01bb/files.Info> -> Bool
def launch_files source · line 228 · raw
@fs:List<&2, String> -> @+opt:String -> @+dir:String -> @+labels:List<&2, String> -> IO(List<&2, 0xc4f31b1cf377fad1ed5191443ddd1c20/domain/architecture/system/deployment/nix_darwin/setting/type.Setting>)
def launch_dir source · line 240 · raw
@+opt:String -> @+dir:String -> @+labels:List<&2, String> -> IO(List<&2, 0xc4f31b1cf377fad1ed5191443ddd1c20/domain/architecture/system/deployment/nix_darwin/setting/type.Setting>)
def launch source · line 246 · raw
@+labels:List<&2, String> -> IO(List<&2, 0xc4f31b1cf377fad1ed5191443ddd1c20/domain/architecture/system/deployment/nix_darwin/setting/type.Setting>)
labels: the system's own launchd jobs (nix-darwin writes them; they are not the Mac's settings).
def observed_from source · line 257 · raw
@+xs:List<&2, 0xc4f31b1cf377fad1ed5191443ddd1c20/domain/architecture/system/deployment/nix_darwin/setting/type.Setting> -> @+labels:List<&2, String> -> IO(List<&2, 0xc4f31b1cf377fad1ed5191443ddd1c20/domain/architecture/system/deployment/nix_darwin/setting/type.Setting>)
---- all of it ----
The Mac's values for the options xs (their values are ignored) and everything nix-darwin sets outside
system.defaults.
def observed source · line 276 · raw
@+options_tsv:String -> @+labels:List<&2, String> -> IO(List<&2, 0xc4f31b1cf377fad1ed5191443ddd1c20/domain/architecture/system/deployment/nix_darwin/setting/type.Setting>)
The Mac's settings: every nix-darwin option in options_tsv (nix-darwin's option list, "option<TAB>type")
that it has a value for, and the rest, less the system's own launchd jobs labels.
def changes source · line 283 · raw
@+settings:List<&2, 0xc4f31b1cf377fad1ed5191443ddd1c20/domain/architecture/system/deployment/nix_darwin/setting/type.Setting> -> @fw:0xc4f31b1cf377fad1ed5191443ddd1c20/domain/architecture/system/deployment/nix_darwin/setting/type.Firewall -> IO(List<&2, 0xc4f31b1cf377fad1ed5191443ddd1c20/domain/architecture/system/plan/type.Step>)
What applying the declared settings and firewall would change: each declared setting whose observed value differs ("(unset)" when the Mac has none), and the firewall.