| Age | Commit message (Collapse) | Author |
|
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.
|
|
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.
|
|
`system.startup.chime`: init
|
|
nix-darwin/programs.direnv: init
|
|
|
|
|
|
This fixes:
```
RuntimeError: can't render html in the presence of docbook
```
|
|
This is just a rebased version of https://github.com/LnL7/nix-darwin/pull/513
Credit to @2gn
|
|
github-runners: adapt to NixOS module
|
|
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
|
|
|
|
|
|
Adds support for DeterminateSystems installer 0.16.0 and later. Fixes #880.
|
|
|
|
linux-builder-big-config-take-2
|
|
linux-builder-big-config-take-2
|
|
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.
|
|
This commit passes more options to nix.buildMachines. Namely the mandatoryFeatures and speedFactor settings have been missing.
|
|
github-runners: init module
|
|
|
|
|
|
|
|
enableScriptingAddition no longer triggers IFD
by using runCommand to generate sudoers.d/yabai,
instead of builtins.hashFile and interpolating the string in nix.
|
|
services/yabai: Remove --check-sa and --install-sa flags
|
|
Add zsh completions to darwin-rebuld by default
|
|
|
|
Fixes #93
|
|
Allow launchd serivceConfig.LimitLoadToSessionType to be a list
|
|
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
|
|
Fixes #855.
|
|
fix shell escaping in networking config
|
|
|
|
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.
|
|
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.
|
|
|
|
|
|
|
|
Add `universalaccess.reduceMotion` option
|
|
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.
|
|
```
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;
}
```
|
|
|
|
|
|
|
|
|
|
|
|
Install darwin-uninstall by default, which includes the 'empty' config it switches to
|
|
etc: add more known hashes
|
|
|
|
|
|
`nix.buildMachines.*.systems` option
|