forked from the-distro/channel-scripts
* Add a script to delete old NixOS/Nixpkgs releases.
git-svn-id: https://nixos.org/repos/nix/release/trunk/channels@34655 70bd8c7a-acb8-0310-9f0d-9cc1c95dcdbb
This commit is contained in:
parent
ed92520f7b
commit
8cc83aaa27
2 changed files with 35 additions and 4 deletions
35
delete-old-releases.sh
Executable file
35
delete-old-releases.sh
Executable file
|
@ -0,0 +1,35 @@
|
|||
#! /bin/sh
|
||||
|
||||
trash=/data/releases/.trash
|
||||
mkdir -p $trash
|
||||
|
||||
# Remove garbage temporary directories.
|
||||
find /data/releases/nixos/ /data/releases/nixpkgs/ -maxdepth 1 -name ".tmp*" -mtime +7 | while read rel; do
|
||||
echo "removing temporary directory $rel"
|
||||
mv $rel $trash/
|
||||
done
|
||||
|
||||
# Remove old NixOS releases.
|
||||
find /data/releases/nixos/ -maxdepth 1 -name "nixos-*pre*" -mtime +30 | sort | while read rel; do
|
||||
if [ -e $rel/keep ]; then
|
||||
echo "keeping NixOS release $rel"
|
||||
continue
|
||||
fi
|
||||
echo "removing old NixOS release $rel"
|
||||
mv $rel $trash/
|
||||
done
|
||||
|
||||
# Remove old Nixpkgs releases.
|
||||
find /data/releases/nixpkgs/ -maxdepth 1 -name "nixpkgs-*pre*" -mtime +30 | sort | while read rel; do
|
||||
if [ -e $rel/keep ]; then
|
||||
echo "keeping Nixpkgs release $rel"
|
||||
continue
|
||||
fi
|
||||
echo "removing old Nixpkgs release $rel"
|
||||
mv $rel $trash/
|
||||
done
|
||||
|
||||
# Remove unreferenced NARs/patches.
|
||||
./print-dead-files.pl /data/releases/patches/all-patches $(find /data/releases -name MANIFEST | grep -v '\.trash' | grep -v '\.tmp') \
|
||||
| xargs -d '\n' sh -c 'find "$@" -mtime +50 -print' \
|
||||
| xargs -d '\n' mv -v --target-directory=$trash
|
|
@ -1,4 +0,0 @@
|
|||
#! /bin/sh
|
||||
./print-dead-files.pl /data/releases/patches/all-patches $(find /data/releases -name MANIFEST | grep -v '\.trash' | grep -v '\.tmp') | sort > /tmp/dead
|
||||
mkdir -p /data/releases/.trash/
|
||||
xargs -d '\n' sh -c 'find "$@" -mtime +50 -print' < /tmp/dead | xargs -d '\n' mv -v --target-directory=/data/releases/.trash/
|
Loading…
Reference in a new issue