aboutsummaryrefslogtreecommitdiff
path: root/apkg-deps
blob: dc0916009fb6db74f36389ea880d78831b4e936b (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
25
26
27
28
29
#!/bin/sh

PKGDB=/var/lib/spm/db

if [ ! "$1" ]; then
	echo "usage: $0 <pkg>"
	exit 0
fi

if [ ! -s "$PKGDB/$1" ]; then
	echo "Package '$1' not installed"
	exit 0
fi

f=$(spm -l $1 | awk '/(sbin|bin|lib)\//')

for i in $f; do
	[ -x /$i ] || continue
	deps="$deps $(ldd /$i 2>/dev/null | awk '!/(ldd)|(linux-gate)|( dynamic)|(not found)/ {print $3}')"
done

deps=$(for i in $deps; do realpath $i; done | sort | uniq)
pkg=$(for i in $deps; do spm -o $i | awk '{print $1}'; done | sort | uniq | grep -Ev "($1|gcc|musl|binutils|glibc)")

if [ "$pkg" ]; then
	echo $pkg | tr ' ' '\n'
fi

exit 0