-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild_all.sh
executable file
·34 lines (28 loc) · 928 Bytes
/
build_all.sh
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
#! /bin/zsh -e
# vim: set noet:
PKGDIR=$(realpath $(dirname $0))
cd $PKGDIR
allpkg=$(ls -d */ | tr -d '/')
# we want to build optdepends first if any presents...
torder=($(sed -E 's/optdepends([^:]*)(: .*)?$/depends\1/g' $PKGDIR/*/.SRCINFO \
| aur graph | tsort | tac))
for pdir in ${torder[@]}; do
if [[ $pdir =~ ".*-git" ]]; then
continue
fi
pkg1=$(grep 'pkgname = ' $pdir/.SRCINFO | awk '{print $3}' | head -n 1)
repo_ver=$(pacman -Si $pkg1 2> /dev/null | grep Version | awk '{print $3}')
latest_ver=$(
pkgver=$(grep pkgver $pdir/.SRCINFO | awk '{print $3}')
pkgrel=$(grep pkgrel $pdir/.SRCINFO | awk '{print $3}')
echo $pkgver-$pkgrel
)
if [[ -z $repo_ver || $(vercmp $latest_ver $repo_ver) -gt 0 ]]; then
cd $pdir
echo $pdir
echo "$repo_ver -> $latest_ver"
# build the packages as ADMIN
aur build -d custom -- -crs --noconfirm
cd $OLDPWD # equiv to cd - but without echo its path
fi
done