summaryrefslogtreecommitdiff
path: root/modules
AgeCommit message (Collapse)Author
2024-03-02fix writing values with containersDylan Frankland
Complex container values like `-array` have their own DSL which does not allow specifying all data types. Instead of using the DSL use plist fragments instead.
2024-03-02feat(nix): adapt nix.conf validation for different Nix versionsMark Sisson
This commit updates the nix.conf validation logic to accommodate different versions of Nix. It introduces a conditional assignment of the `showCommand` variable, which determines the appropriate command to use based on the Nix version. For versions at least "2.20pre", it uses "config show"; otherwise, it falls back to "show-config". This change ensures compatibility across various Nix releases.
2024-03-02Merge pull request #892 from Samasaur1/startup-chimeMichael Hoang
`system.startup.chime`: init
2024-03-01Merge pull request #891 from mattpolzin/nix-direnvDomen Kožar
nix-darwin/programs.direnv: init
2024-02-29`system.startup.chime`: initSam
2024-02-29`system.nvram`: init (internal)Sam
2024-02-29Fix doc render problemMoritz Rumpf
This fixes: ``` RuntimeError: can't render html in the presence of docbook ```
2024-02-29defaults: Add options for dragOnGesture featureMoritz Rumpf
This is just a rebased version of https://github.com/LnL7/nix-darwin/pull/513 Credit to @2gn
2024-02-28Merge pull request #893 from yaxitech/github-runner-2Domen Kožar
github-runners: adapt to NixOS module
2024-02-28github-runners: adapt to NixOS moduleVincent Haupert
While #859 added basic support for configuring GitHub runners through nix-darwin, it did not yet support all of the options the NixOS module offers. I am aware that this is a rather big overhaul. I think, however, that it's worth it: - Copies the `options.nix` from the [NixOS module] with only minor adaptations. This should help to keep track of any changes to it. - Respect the `workDir` config option. So far, the implementation didn't even read the value of the option. - Allow configuring a custom user and group. If both are `null`, nix-darwin manages the `_github-runner` user shared among all instances. Take care of creating your own users if that's not what you want. - Also creates the necessary directories for state, logs and the working directory (unless `workDir != null`). It uses the following locations: * state: `/var/lib/github-runners/${name}` * logs: `/var/log/github-runners/${name}` * work: The value of `workDir` or `/var/run/github-runners/${name}` if (`workDir == null`). We have to create the logs directory before starting the service since launchd expects that the `Standard{Error,Out}Path` exist. We do this by prepending to [`system.activationScripts.launchd.text`]. All directories belong to the configured `user` and `group`. - Warn if a `tokenFile` points to the Nix store. [NixOS module]: https://github.com/NixOS/nixpkgs/blob/3c30c56/nixos/modules/services/continuous-integration/github-runner/options.nix [`system.activationScripts.launchd.text`]: https://github.com/LnL7/nix-darwin/blob/bbde06b/modules/system/launchd.nix#L99-L123
2024-02-27nix-darwin/programs.direnv: initMathew Polzin
2024-02-26security.sudo.extraConfig: fix default behaviorSam
2024-02-23etc: add known hash for `/etc/zshenv` and `/etc/nix/nix.conf`Evan Petousis
Adds support for DeterminateSystems installer 0.16.0 and later. Fixes #880.
2024-02-21apply feedback, fix merge goofLogan Barnett
2024-02-21Merge remote-tracking branch 'ethnt/linux-builder-systems-config' into ↵Logan Barnett
linux-builder-big-config-take-2
2024-02-21Merge remote-tracking branch 'stv0g/linux-runner-options' into ↵Logan Barnett
linux-builder-big-config-take-2
2024-02-20linux-builder: default pass through protocol to nix.buildMachinesLogan Barnett
This commit adds a protocol option for the `linux-builder` and defaults it to `ssh-ng`. I have observed it needing this with the following: ``` sh $ nix store ping --store ssh://linux-builder Store URL: ssh://linux-builder $ nix store ping --store ssh-ng://linux-builder Store URL: ssh-ng://linux-builder Version: 2.18.1 Trusted: 0 ``` This seems to make the difference on whether or not Nix picks up `linux-builder` as an available builder.
2024-02-18linux-builder: Pass through more options to nix.buildMachinesSteffen Vogel
This commit passes more options to nix.buildMachines. Namely the mandatoryFeatures and speedFactor settings have been missing.
2024-02-18Merge pull request #859 from yaxitech/github-runnerDomen Kožar
github-runners: init module
2024-02-11security.sudo.extraConfig: initSam
2024-02-11first working versionMike Vink
2024-02-10add nixos syncthing serviceMike Vink
2024-02-01services/yabai: Remove IFDNikodem Rabuliński
enableScriptingAddition no longer triggers IFD by using runCommand to generate sudoers.d/yabai, instead of builtins.hashFile and interpolating the string in nix.
2024-01-30Merge pull request #780 from kalbasit/update_yabai_sa_scriptMichael Hoang
services/yabai: Remove --check-sa and --install-sa flags
2024-01-29Merge pull request #861 from thanegill/darwin-rebuild-completionsMichael Hoang
Add zsh completions to darwin-rebuld by default
2024-01-27Add zsh completions to darwin-rebuld by defaultThane Gill
2024-01-27Use nixpkgs generators.toPlist for launchd service generation.Thane Gill
Fixes #93
2024-01-22Merge pull request #857 from thanegill/patch-2Michael Hoang
Allow launchd serivceConfig.LimitLoadToSessionType to be a list
2024-01-22github-runners: init moduleVincent Haupert
Adds a new module which allows to configure multiple GitHub self-hosted runners on Darwin. The module is heavily inspired by the nixpkgs NixOS module. Its implementation differs in some ways: - There's currently no way to configure the user/group which runs the runner. All configured runners share the same user and group. - No automatic cleanup. - No advanced sandboxing apart from user/group isolation
2024-01-21Add option to disable zsh global compinitJōshin
Fixes #855.
2024-01-21Merge pull request #854 from kallisti-dev/fix/network-names-shell-escapesMichael Hoang
fix shell escaping in networking config
2024-01-20fix: set shell for new users, and only known onesHraban Luyat
2024-01-20fix: user shell path handlingHraban Luyat
Properly detect the binary name (not just /nix/store/...-bash, but include the .../bin/bash), and use the symlinked name which also appears in /etc/shells.
2024-01-19Allow launchd serivceConfig.LimitLoadToSessionType to be a listThane Gill
Per: https://developer.apple.com/library/archive/technotes/tn2083/_index.html#:~:text=If%20you%20want%20to%20run%20in%20more%20than%20one%20session%20type%2C%20you%20can%20set%20LimitLoadToSessionType%20to%20an%20array%2C%20where%20each%20element%20is%20a%20session%20type%20string. LimitLoadToSessionType can also be an array if more than one session type is desired.
2024-01-19fix shell escaping in networking configAdam Curtis
2024-01-16Add type definition on fonts.fontDir.enableXMLHexagram
2024-01-15Dedupe the WorkingDirectory path of the linux-builderJacek Galowicz
2024-01-03Merge pull request #820 from mhumeSF/reduce-motionMichael Hoang
Add `universalaccess.reduceMotion` option
2023-12-31linux-builder: remove trusted user requirementMichael Hoang
If you set up a signing key for the `linux-builder` and add that as trusted public key on your machine, you won't need to be a trusted user at all.
2023-12-30Fix type errorCarl Thomé
``` error: A definition for option `launchd.user.agents.[...].serviceConfig.StartCalendarInterval' is not of type `null or (list of (submodule))'. Definition values: - In `<unknown-file>': { Hour = 0; Minute = 0; } ```
2023-12-29GlobalPreferences: fix mouse scaling exampleAustin Horstman
2023-12-27Use native floats for mouse scalingfortuneteller2k
2023-12-23etc: add known hash for `/etc/shells`Michael Hoang
2023-12-04users: fix `forceRecreate` bash comparisonzowoq
2023-12-01Adding reduce motion optionMike Hume
2023-11-24Merge pull request #806 from DeterminateSystems/easier-uninstallMichael Hoang
Install darwin-uninstall by default, which includes the 'empty' config it switches to
2023-11-23Merge pull request #809 from Enzime/more-hashesDomen Kožar
etc: add more known hashes
2023-11-22Add default system to `systems` optionEthan Turkeltaub
2023-11-22Use `nix.buildMachines.*.systems` instead of `nix.buildMachines.*.system`Ethan Turkeltaub
2023-11-22Add `nix.linux-builder.systems` option to set corresponding ↵Ethan Turkeltaub
`nix.buildMachines.*.systems` option