summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--arch-nspawn.in8
-rw-r--r--archbuild.in4
2 files changed, 9 insertions, 3 deletions
diff --git a/arch-nspawn.in b/arch-nspawn.in
index fdff31e..b3dfbfb 100644
--- a/arch-nspawn.in
+++ b/arch-nspawn.in
@@ -96,4 +96,10 @@ fi
build_mount_args
copy_hostconf
-exec systemd-nspawn -D "$working_dir" --machine "${working_dir//\//-}" "${mount_args[@]}" "$@"
+eval $(grep '^CARCH=' "$working_dir/etc/makepkg.conf")
+
+exec ${CARCH:+setarch "$CARCH"} systemd-nspawn \
+ -D "$working_dir" \
+ --machine "${working_dir//\//-}" \
+ "${mount_args[@]}" \
+ "$@"
diff --git a/archbuild.in b/archbuild.in
index 9f1b98a..097cc37 100644
--- a/archbuild.in
+++ b/archbuild.in
@@ -69,7 +69,7 @@ if ${clean_first} || [[ ! -d "${chroots}/${repo}-${arch}" ]]; then
"${base_packages[@]}" || abort
else
lock 9 "${chroots}/${repo}-${arch}/root.lock" "Locking clean chroot"
- setarch ${arch} arch-nspawn \
+ arch-nspawn \
-C "@pkgdatadir@/pacman-${repo}.conf" \
-M "@pkgdatadir@/makepkg-${arch}.conf" \
"${chroots}/${repo}-${arch}/root" \
@@ -77,4 +77,4 @@ else
fi
msg "Building in chroot for [${repo}] (${arch})..."
-exec setarch "${arch}" makechrootpkg "${makechrootpkg_args[@]}" -r "${chroots}/${repo}-${arch}"
+exec makechrootpkg "${makechrootpkg_args[@]}" -r "${chroots}/${repo}-${arch}"