diff options
Diffstat (limited to 'pkgs')
| -rw-r--r-- | pkgs/default.nix | 1 | ||||
| -rw-r--r-- | pkgs/nixgc.nix | 22 |
2 files changed, 23 insertions, 0 deletions
diff --git a/pkgs/default.nix b/pkgs/default.nix index dbdc6f5..84e34bb 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -7,6 +7,7 @@ in { fastfetch = callPackage ./fastfetch.nix {}; huion = callPackage ./huion.nix {}; mommy = callPackage ./mommy.nix {}; + nixgc = callPackage ./nixgc.nix {}; theseus = callPackage ./theseus.nix { inherit (pkgs.nodePackages) pnpm; inherit (pkgs.darwin.apple_sdk.frameworks) CoreServices Security WebKit; diff --git a/pkgs/nixgc.nix b/pkgs/nixgc.nix new file mode 100644 index 0000000..d13614a --- /dev/null +++ b/pkgs/nixgc.nix @@ -0,0 +1,22 @@ +# this is a shell script that uses the new nix cli to emulate +# nix-collect-garbage +{ + lib, + writeShellApplication, + nix, + fd, +}: +writeShellApplication { + name = "nixgc"; + + runtimeInputs = [nix fd]; + + text = '' + fd . /nix/var/nix/profiles /home/*/.local/state/nix/profiles -d 3 -t symlink -E '*-link' | while read -r profile; do + nix profile wipe-history --profile "$profile" "$@" + done + ''; +} +// { + meta.platforms = lib.platforms.linux; +} |
