aboutsummaryrefslogtreecommitdiff
path: root/contrib/cpt-size
blob: f55f72abcc570260288071c68789fb3f1d3fd72c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#!/bin/sh -ef
# Show the size on disk for a package

case "$1" in
    --help|-h)
        printf '%s\n' "usage: ${0##*/} [pkg]"
        exit 0
        ;;
    '') set -- "${PWD##*/}"
esac

cpt-search "$1" >/dev/null

files=
while read -r file; do
    # Filter directories from manifest and leave only files.
    # Directories in the manifest end in a trailing '/'.
    case $file in */) continue; esac
    files="$files '$file'"
done < "$CPT_ROOT/var/db/cpt/installed/$1/manifest"
eval "set -- $files"

# Send the file list to 'du'.
du -shc -- "$@" 2>/dev/null