···115116- [Eintopf](https://eintopf.info), a community event and calendar web application. Available as [services.eintopf](options.html#opt-services.eintopf.enable).
11700118- [Radicle](https://radicle.xyz), an open source, peer-to-peer code collaboration stack built on Git. Available as [services.radicle](#opt-services.radicle.enable).
119120- [ddns-updater](https://github.com/qdm12/ddns-updater), a service with a WebUI to update DNS records periodically for many providers. Available as [services.ddns-updater](#opt-services.ddns-updater.enable).
···115116- [Eintopf](https://eintopf.info), a community event and calendar web application. Available as [services.eintopf](options.html#opt-services.eintopf.enable).
117118+- [`pay-respects`](https://codeberg.org/iff/pay-respects), a terminal command correction program, alternative to `thefuck`, written in Rust. Available as [programs.pay-respects](options.html#opt-programs.pay-respects).
119+120- [Radicle](https://radicle.xyz), an open source, peer-to-peer code collaboration stack built on Git. Available as [services.radicle](#opt-services.radicle.enable).
121122- [ddns-updater](https://github.com/qdm12/ddns-updater), a service with a WebUI to update DNS records periodically for many providers. Available as [services.ddns-updater](#opt-services.ddns-updater.enable).
···94 '';
95 }) super.git-annex;
9600000097 # Prevents needing to add `security_tool` as a run-time dependency for
98 # everything using x509-system to give access to the `security` executable.
99 #
···94 '';
95 }) super.git-annex;
9697+ # on*Finish tests rely on a threadDelay timing differential of 0.1s.
98+ # You'd think that's plenty of time even though immediate rescheduling
99+ # after threadDelay is not guaranteed. However, it appears that these
100+ # tests are quite flaky on Darwin.
101+ immortal = dontCheck super.immortal;
102+103 # Prevents needing to add `security_tool` as a run-time dependency for
104 # everything using x509-system to give access to the `security` executable.
105 #
···427 flake="$(dirname "$(readlink -f /etc/nixos/flake.nix)")"
428fi
4290000000000000000000430# For convenience, use the hostname as the default configuration to
431# build from the flake.
432if [[ -n $flake ]]; then
···449 log "error: ‘--specialisation’ can only be used with ‘switch’ and ‘test’"
450 exit 1
451fi
452-453-tmpDir=$(mktemp -t -d nixos-rebuild.XXXXXX)
454-455-if [[ ${#tmpDir} -ge 60 ]]; then
456- # Very long tmp dirs lead to "too long for Unix domain socket"
457- # SSH ControlPath errors. Especially macOS sets long TMPDIR paths.
458- rmdir "$tmpDir"
459- tmpDir=$(TMPDIR= mktemp -t -d nixos-rebuild.XXXXXX)
460-fi
461-462-cleanup() {
463- for ctrl in "$tmpDir"/ssh-*; do
464- ssh -o ControlPath="$ctrl" -O exit dummyhost 2>/dev/null || true
465- done
466- rm -rf "$tmpDir"
467-}
468-trap cleanup EXIT
469470471# Re-execute nixos-rebuild from the Nixpkgs tree.
···509 fi
510 exit 1
511fi
512-513-SSHOPTS="$NIX_SSHOPTS -o ControlMaster=auto -o ControlPath=$tmpDir/ssh-%n -o ControlPersist=60"
514515# First build Nix, since NixOS may require a newer version than the
516# current one.
···427 flake="$(dirname "$(readlink -f /etc/nixos/flake.nix)")"
428fi
429430+tmpDir=$(mktemp -t -d nixos-rebuild.XXXXXX)
431+432+if [[ ${#tmpDir} -ge 60 ]]; then
433+ # Very long tmp dirs lead to "too long for Unix domain socket"
434+ # SSH ControlPath errors. Especially macOS sets long TMPDIR paths.
435+ rmdir "$tmpDir"
436+ tmpDir=$(TMPDIR= mktemp -t -d nixos-rebuild.XXXXXX)
437+fi
438+439+cleanup() {
440+ for ctrl in "$tmpDir"/ssh-*; do
441+ ssh -o ControlPath="$ctrl" -O exit dummyhost 2>/dev/null || true
442+ done
443+ rm -rf "$tmpDir"
444+}
445+trap cleanup EXIT
446+447+SSHOPTS="$NIX_SSHOPTS -o ControlMaster=auto -o ControlPath=$tmpDir/ssh-%n -o ControlPersist=60"
448+449# For convenience, use the hostname as the default configuration to
450# build from the flake.
451if [[ -n $flake ]]; then
···468 log "error: ‘--specialisation’ can only be used with ‘switch’ and ‘test’"
469 exit 1
470fi
00000000000000000471472473# Re-execute nixos-rebuild from the Nixpkgs tree.
···511 fi
512 exit 1
513fi
00514515# First build Nix, since NixOS may require a newer version than the
516# current one.