summaryrefslogtreecommitdiff
path: root/pkgs/nixgc/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/nixgc/default.nix')
-rw-r--r--pkgs/nixgc/default.nix22
1 files changed, 22 insertions, 0 deletions
diff --git a/pkgs/nixgc/default.nix b/pkgs/nixgc/default.nix
new file mode 100644
index 0000000..d13614a
--- /dev/null
+++ b/pkgs/nixgc/default.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;
+}