aboutsummaryrefslogtreecommitdiff
path: root/scripts/gc.sh
blob: c93c948a2fa72e41822d730500ea12c546170d5b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#!/usr/bin/env bash

disk_space() {
  u | awk '{print $5" "$6}'
}

before=$(disk_space)

yellow "Cleaning up the NixOS store"

profiles=(per-user/root/channels per-user/andreh/profile per-user/andreh/channels system)

for p in "${profiles[@]}"; do
    sudo nix-env --delete-generations old -p "/nix/var/nix/profiles/$p"
done

# Current profile, change when installing with =nix-env -iA nixpkgs.bsdgames=
nix-env --delete-generations old

nix-store --gc
nix-collect-garbage -d


yellow "Cleaning up Guix store"

guix gc


yellow "Cleaning up up the Trash and /tmp folders"

sudo rm -rf ~/.local/share/Trash/files/*
# https://askubuntu.com/a/609396
sudo find /tmp -type f -atime +10 -delete


yellow "Erasing docker images"

echo y | docker system prune -a
docker rmi "$(docker images -a -q)"
docker rm "$(docker ps -a -f status=exited -q)"

docker stop "$(docker ps -a -q)"
docker rm "$(docker ps -a -q)"

echo y | docker volume prune
echo y | docker container prune


# Source: https://www.reddit.com/r/emacs/comments/6wqfp3/notmuch_delete_mail/
yellow "Clean up deleted email files"
notmuch search --output=files --exclude=false tag:deleted | xargs -I{} rm "{}"
notmuch new

after=$(disk_space)

green "Done."
green "Disk space before and after:"
blue "  before: ${before}"
blue "  after:  ${after}"