Update pacstrap.in

Bypass file conflict checks and overwrite conflicting files. If the package that is about to be installed contains files that are already installed this option will cause all those files to be overwritten.
This commit is contained in:
Brijesh Krishna 2023-06-16 19:39:39 +05:30 committed by GitHub
parent a5b772db02
commit e8aaa29d9a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -18,6 +18,7 @@ pacman_args=()
pacmode=-Sy pacmode=-Sy
unshare=0 unshare=0
copyconf=0 copyconf=0
overwrite=0
pacman_config=/etc/pacman.conf pacman_config=/etc/pacman.conf
m4_include(common) m4_include(common)
@ -37,7 +38,7 @@ usage: ${0##*/} [options] root [packages...]
-N Run in unshare mode as a regular user -N Run in unshare mode as a regular user
-P Copy the host's pacman config to the target -P Copy the host's pacman config to the target
-U Use pacman -U to install packages -U Use pacman -U to install packages
-O Bypass file conflict checks and overwrite conflicting files
-h Print this help message -h Print this help message
pacstrap installs packages to the specified new root directory. If no packages pacstrap installs packages to the specified new root directory. If no packages
@ -122,6 +123,9 @@ while getopts ':C:cDGiKMNPU' flag; do
U) U)
pacmode=-U pacmode=-U
;; ;;
O)
overwrite=1
;;
:) :)
die '%s: option requires an argument -- '\''%s'\' "${0##*/}" "$OPTARG" die '%s: option requires an argument -- '\''%s'\' "${0##*/}" "$OPTARG"
;; ;;
@ -148,6 +152,10 @@ if (( ! interactive )); then
pacman_args+=(--noconfirm) pacman_args+=(--noconfirm)
fi fi
if (( overwite )); then
pacman_args+=(--overwrite='!*')
fi
if (( unshare )); then if (( unshare )); then
setup=unshare_setup setup=unshare_setup
$mount_unshare bash -c "$(declare_all); pacstrap" $mount_unshare bash -c "$(declare_all); pacstrap"