mirror of
https://github.com/LnL7/nix-darwin.git
synced 2025-03-05 00:07:01 +00:00
addresses https://github.com/LnL7/nix-darwin/issues/1043 fix: use exec in launchd daemon config fix: dont use a script thats in the nix store fix: remove manual wait4path in linux-builder fix: remove manual wait4path in karabiner elements fix: remove manual wait4path in nix-daemon fix: remove manual wait4path in nix-optimise fix: remove manual wait4path in tailscaled fix: autossh test Revert "fix: remove manual wait4path in nix-daemon" This reverts commit 6aec084fa5d095666e81676e78f7054c83703faa. fix: remove bad exec Reapply "fix: remove manual wait4path in nix-daemon" This reverts commit c8f136ecc555f803124af471324bc6ed1163d6dd. fix: update autossh test to reflect changes in f86e6133d957becb1958da638516b0860fbd7491 fix: services-activate-system-changed-label-prefix test fix: services-buildkite-agent test fix: services-activate-system test fix: escape ampersand fix: services-lorri test fix: services-nix-optimise test fix: services-nix-gc test refactor: use script rather than command in daemon fix: use config.command for clarity style: fix indentation fix: use lib.getExe rather than directly pointing to file revert: a87fc7bbbbdb7c25c5ad6721c93990ea035affdd - mistaken refactor meant that service waited for nix store and not the relevant path
42 lines
1.3 KiB
Nix
42 lines
1.3 KiB
Nix
{
|
|
config,
|
|
pkgs,
|
|
lib,
|
|
...
|
|
}:
|
|
|
|
let
|
|
plistPath = "${config.out}/user/Library/LaunchAgents/org.nixos.lorri.plist";
|
|
expectedPath = "${lib.makeBinPath [
|
|
config.nix.package
|
|
pkgs.git
|
|
pkgs.gnutar
|
|
pkgs.gzip
|
|
]}";
|
|
expectedNixPath = "${"nixpkgs=" + toString pkgs.path}";
|
|
in
|
|
{
|
|
services.lorri.enable = true;
|
|
test = ''
|
|
PATH=${
|
|
lib.makeBinPath [
|
|
pkgs.xcbuild
|
|
pkgs.jq
|
|
]
|
|
}:$PATH
|
|
|
|
plutil -lint ${plistPath}
|
|
plutil -convert json -o service.json ${plistPath}
|
|
|
|
<service.json jq -e ".EnvironmentVariables.PATH == \"${expectedPath}\""
|
|
<service.json jq -e ".EnvironmentVariables.NIX_PATH == \"${expectedNixPath}\""
|
|
<service.json jq -e ".KeepAlive == true"
|
|
<service.json jq -e ".Label == \"org.nixos.lorri\""
|
|
<service.json jq -e ".ProcessType == \"Background\""
|
|
<service.json jq -e ".ProgramArguments|length == 3"
|
|
<service.json jq -e ".ProgramArguments[0] == \"/bin/sh\""
|
|
<service.json jq -e ".ProgramArguments[1] == \"-c\""
|
|
<service.json jq -e ".ProgramArguments[2] == \"/bin/wait4path /nix/store && exec ${pkgs.lorri}/bin/lorri daemon\""
|
|
<service.json jq -e ".RunAtLoad == true"
|
|
'';
|
|
}
|