Compare commits

...

4 Commits

Author SHA1 Message Date
Estela
6c290045e7 Merge branch 'master' into 'master'
makechrootpkg: allow pass "-s" to arch-nspawn to not run setarch

See merge request archlinux/devtools!299
2025-08-10 22:49:24 +00:00
Aaron Liu
3f0ebbc6d2 fix(license): add .gitignore to REUSE defaults
36 packages use this while 26 use *.pam and 21 use *.logrotate. Seems
anecdotally common enough to add this here.
2025-08-08 14:13:32 +02:00
Estela
773f8d5c0e Merge branch devtools:master into master 2025-03-22 20:27:30 +00:00
hayao
538604fead makechrootpkg: Pass "-s" to arch-nspawn to not run setarch
Signed-off-by: Estela ad Astra <i@estela.moe>
2025-01-27 09:42:15 +01:00
2 changed files with 9 additions and 5 deletions

View File

@@ -188,6 +188,7 @@ path = [
"README.md",
"keys/**",
".SRCINFO",
".gitignore",
".nvchecker.toml",
"*.install",
"*.sysusers",

View File

@@ -20,6 +20,7 @@ shopt -s nullglob
default_makepkg_args=(--syncdeps --noconfirm --log --holdver --skipinteg)
makepkg_args=("${default_makepkg_args[@]}")
verifysource_args=()
archnspawn_args=()
chrootdir=
passeddir=
makepkg_user=
@@ -80,6 +81,7 @@ usage() {
echo ' Useful for maintaining multiple copies'
echo " Default: $copy"
echo '-n Run namcap on the package'
echo "-s Do not run setarch"
echo '-C Run checkpkg on the package'
echo '-T Build in a temporary directory'
echo '-U Run makepkg as a specified user'
@@ -150,7 +152,7 @@ install_packages() {
pkgnames=("${install_pkgs[@]##*/}")
cp -- "${install_pkgs[@]}" "$copydir/root/"
arch-nspawn "$copydir" "${bindmounts_ro[@]}" "${bindmounts_rw[@]}" "${bindmounts_tmpfs[@]}" \
arch-nspawn "${archnspawn_args[@]}" "$copydir" "${bindmounts_ro[@]}" "${bindmounts_rw[@]}" "${bindmounts_tmpfs[@]}" \
pacman -U --noconfirm --ask=4 -- "${pkgnames[@]/#//root/}"
ret=$?
rm -- "${pkgnames[@]/#/$copydir/root/}"
@@ -293,7 +295,7 @@ move_products() {
}
# }}}
while getopts 'hcur:I:l:nCTD:d:U:x:t:' arg; do
while getopts 'hcur:sI:l:nCTD:d:U:x:t:' arg; do
case "$arg" in
c) clean_first=1 ;;
D) bindmounts_ro+=("--bind-ro=$OPTARG") ;;
@@ -301,6 +303,7 @@ while getopts 'hcur:I:l:nCTD:d:U:x:t:' arg; do
t) bindmounts_tmpfs+=("--tmpfs=$OPTARG") ;;
u) update_first=1 ;;
r) passeddir="$OPTARG" ;;
s) archnspawn_args+=("-s") ;;
I) install_pkgs+=("$OPTARG") ;;
l) copy="$OPTARG" ;;
n) run_namcap=1; makepkg_args+=(--install) ;;
@@ -367,7 +370,7 @@ if [[ ! -d $copydir ]] || (( clean_first )); then
sync_chroot "$chrootdir" "$copydir" "$copy"
fi
(( update_first )) && arch-nspawn "$copydir" \
(( update_first )) && arch-nspawn "${archnspawn_args[@]}" "$copydir" \
"${bindmounts_ro[@]}" "${bindmounts_rw[@]}" "${bindmounts_tmpfs[@]}" \
pacman -Syuu --noconfirm
@@ -396,7 +399,7 @@ nspawn_build_args=(
"${bindmounts_tmpfs[@]}"
)
if arch-nspawn "$copydir" \
if arch-nspawn "${archnspawn_args[@]}" "$copydir" \
"${nspawn_build_args[@]}" \
/chrootbuild "${makepkg_args[@]}"
then
@@ -444,7 +447,7 @@ else
for remotepkg in "${remotepkgs[@]}"; do
if [[ $remotepkg != file://* ]]; then
msg2 "Downloading current versions"
arch-nspawn "$copydir" pacman --noconfirm -Swdd "${pkgnames[@]}"
arch-nspawn "${archnspawn_args[@]}" "$copydir" pacman --noconfirm -Swdd "${pkgnames[@]}"
mapfile -t remotepkgs < <(pacman --config "$copydir"/etc/pacman.conf \
--dbpath "$copydir"/var/lib/pacman \
-Sddp "${pkgnames[@]}")