makechrootpkg: Install packages in one step
Avoids having to specify them in dependency order.
This commit is contained in:
parent
ca819a2357
commit
69a3a0e7c0
|
@ -127,19 +127,16 @@ clean_temporary() {
|
||||||
}
|
}
|
||||||
|
|
||||||
install_packages() {
|
install_packages() {
|
||||||
local pkgname
|
local -a pkgnames
|
||||||
|
local ret
|
||||||
|
|
||||||
for install_pkg in "${install_pkgs[@]}"; do
|
pkgnames=("${install_pkgs[@]##*/}")
|
||||||
pkgname="${install_pkg##*/}"
|
|
||||||
cp "$install_pkg" "$copydir/$pkgname"
|
|
||||||
|
|
||||||
arch-nspawn "$copydir" \
|
cp -- "${install_pkgs[@]}" "$copydir/root/"
|
||||||
"${bindmounts_ro[@]}" "${bindmounts_rw[@]}" \
|
arch-nspawn "$copydir" "${bindmounts_ro[@]}" "${bindmounts_rw[@]}" \
|
||||||
pacman -U /$pkgname --noconfirm
|
pacman -U --noconfirm -- "${pkgnames[@]/#//root/}"
|
||||||
(( ret += !! $? ))
|
ret=$?
|
||||||
|
rm -- "${pkgnames[@]/#/$copydir/root/}"
|
||||||
rm "$copydir/$pkgname"
|
|
||||||
done
|
|
||||||
|
|
||||||
# If there is no PKGBUILD we are done
|
# If there is no PKGBUILD we are done
|
||||||
[[ -f PKGBUILD ]] || exit $ret
|
[[ -f PKGBUILD ]] || exit $ret
|
||||||
|
|
Loading…
Reference in New Issue