mirror of
https://github.com/Gator96100/ProxSpace.git
synced 2025-07-30 19:40:12 -07:00
Updated msys2 to msys2-base-x86_64-20200903
This commit is contained in:
parent
5bc8dbdc75
commit
2307d54cb1
18501 changed files with 1684082 additions and 720361 deletions
|
@ -4,7 +4,7 @@
|
|||
# repo-remove - remove a package entry from a given repo database file
|
||||
# Generated from repo-add.sh.in; do not edit by hand.
|
||||
#
|
||||
# Copyright (c) 2006-2018 Pacman Development Team <pacman-dev@archlinux.org>
|
||||
# Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
|
@ -25,11 +25,12 @@ shopt -s extglob
|
|||
export TEXTDOMAIN='pacman-scripts'
|
||||
export TEXTDOMAINDIR='/usr/share/locale'
|
||||
|
||||
declare -r myver='5.1.3'
|
||||
declare -r myver='5.2.2'
|
||||
declare -r confdir='/etc'
|
||||
|
||||
LIBRARY=${LIBRARY:-'/usr/share/makepkg'}
|
||||
|
||||
QUIET=0
|
||||
DELTA=0
|
||||
ONLYADDNEW=0
|
||||
RMEXISTING=0
|
||||
SIGN=0
|
||||
|
@ -41,96 +42,32 @@ REPO_DB_SUFFIX=
|
|||
LOCKFILE=
|
||||
CLEAN_LOCK=0
|
||||
USE_COLOR='y'
|
||||
PREVENT_DOWNGRADE=0
|
||||
|
||||
# Import libmakepkg
|
||||
source "$LIBRARY"/util/message.sh
|
||||
source "$LIBRARY"/utils_fixed_path.sh
|
||||
|
||||
# ensure we have a sane umask set
|
||||
umask 0022
|
||||
|
||||
plain() {
|
||||
(( QUIET )) && return
|
||||
local mesg=$1; shift
|
||||
printf "${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&1
|
||||
}
|
||||
|
||||
msg() {
|
||||
(( QUIET )) && return
|
||||
local mesg=$1; shift
|
||||
printf "${GREEN}==>${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&1
|
||||
}
|
||||
|
||||
msg2() {
|
||||
(( QUIET )) && return
|
||||
local mesg=$1; shift
|
||||
printf "${BLUE} ->${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&1
|
||||
}
|
||||
|
||||
ask() {
|
||||
local mesg=$1; shift
|
||||
printf "${BLUE}::${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}" "$@" >&1
|
||||
}
|
||||
|
||||
warning() {
|
||||
local mesg=$1; shift
|
||||
printf "${YELLOW}==> $(gettext "WARNING:")${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2
|
||||
}
|
||||
|
||||
error() {
|
||||
local mesg=$1; shift
|
||||
printf "${RED}==> $(gettext "ERROR:")${ALL_OFF}${BOLD} ${mesg}${ALL_OFF}\n" "$@" >&2
|
||||
}
|
||||
|
||||
if [[ -n "$MSYSTEM" ]]; then
|
||||
readonly -a UTILS_NAME=('bsdtar'
|
||||
'bzip2'
|
||||
'bzr'
|
||||
'cat'
|
||||
'ccache'
|
||||
'distcc'
|
||||
'git'
|
||||
'gpg'
|
||||
'gzip'
|
||||
'hg'
|
||||
'lzip'
|
||||
'lzop'
|
||||
'openssl'
|
||||
'svn'
|
||||
'tput'
|
||||
'uncompress'
|
||||
'upx'
|
||||
'xargs'
|
||||
'xz'
|
||||
)
|
||||
|
||||
for wrapper in ${UTILS_NAME[@]}; do
|
||||
eval "
|
||||
${wrapper}"'() {
|
||||
local UTILS_PATH="/usr/bin/"
|
||||
if ! type -p ${UTILS_PATH}${FUNCNAME[0]} >/dev/null; then
|
||||
error "$(gettext "Cannot find the %s binary required for makepkg.")" "${UTILS_PATH}${FUNCNAME[0]}"
|
||||
exit 1
|
||||
fi
|
||||
${UTILS_PATH}${FUNCNAME[0]} "$@"
|
||||
}'
|
||||
done
|
||||
fi
|
||||
|
||||
|
||||
# print usage instructions
|
||||
usage() {
|
||||
cmd=${0##*/}
|
||||
printf -- "%s (pacman) %s\n\n" "$cmd" "$myver"
|
||||
if [[ $cmd == "repo-add" ]] ; then
|
||||
printf -- "$(gettext "Usage: repo-add [options] <path-to-db> <package|delta> ...\n")"
|
||||
printf -- "$(gettext "Usage: repo-add [options] <path-to-db> <package> ...\n")"
|
||||
printf -- "\n"
|
||||
printf -- "$(gettext "\
|
||||
repo-add will update a package database by reading a package file.\n\
|
||||
Multiple packages to add can be specified on the command line.\n")"
|
||||
printf -- "\n"
|
||||
printf -- "$(gettext "Options:\n")"
|
||||
printf -- "$(gettext " -d, --delta generate and add delta for package update\n")"
|
||||
printf -- "$(gettext " -n, --new only add packages that are not already in the database\n")"
|
||||
printf -- "$(gettext " -R, --remove remove old package file from disk after updating database\n")"
|
||||
printf -- "$(gettext " -p, --prevent-downgrade do not add package to database if a newer version is already present\n")"
|
||||
elif [[ $cmd == "repo-remove" ]] ; then
|
||||
printf -- "$(gettext "Usage: repo-remove [options] <path-to-db> <packagename|delta> ...\n")"
|
||||
printf -- "$(gettext "Usage: repo-remove [options] <path-to-db> <packagename> ...\n")"
|
||||
printf -- "\n"
|
||||
printf -- "$(gettext "\
|
||||
repo-remove will update a package database by removing the package name\n\
|
||||
|
@ -160,8 +97,9 @@ See %s(8) for more details and descriptions of the available options.\n")" $cmd
|
|||
version() {
|
||||
cmd=${0##*/}
|
||||
printf "%s (pacman) %s\n\n" "$cmd" "$myver"
|
||||
printf -- "Copyright (c) 2006-2020 Pacman Development Team <pacman-dev@archlinux.org>.\n"
|
||||
printf '\n'
|
||||
printf -- "$(gettext "\
|
||||
Copyright (c) 2006-2018 Pacman Development Team <pacman-dev@archlinux.org>\n\n\
|
||||
This is free software; see the source for copying conditions.\n\
|
||||
There is NO WARRANTY, to the extent permitted by law.\n")"
|
||||
}
|
||||
|
@ -186,7 +124,7 @@ find_pkgentry() {
|
|||
|
||||
for pkgentry in "$tmpdir/db/$pkgname"*; do
|
||||
name=${pkgentry##*/}
|
||||
if [[ ${name%-*-*} = $pkgname ]]; then
|
||||
if [[ ${name%-*-*} = "$pkgname" ]]; then
|
||||
echo $pkgentry
|
||||
return 0
|
||||
fi
|
||||
|
@ -194,90 +132,6 @@ find_pkgentry() {
|
|||
return 1
|
||||
}
|
||||
|
||||
# Get the package name from the delta filename
|
||||
get_delta_pkgname() {
|
||||
local tmp
|
||||
|
||||
tmp=${1##*/}
|
||||
echo ${tmp%-*-*_to*}
|
||||
}
|
||||
|
||||
# write a delta entry
|
||||
# arg1 - path to delta file
|
||||
db_write_delta() {
|
||||
deltafile=$1
|
||||
pkgname=$(get_delta_pkgname "$deltafile")
|
||||
|
||||
pkgentry=$(find_pkgentry "$pkgname")
|
||||
if [[ -z $pkgentry ]]; then
|
||||
error "$(gettext "No database entry for package '%s'.")" "$pkgname"
|
||||
return 1
|
||||
fi
|
||||
deltas=$pkgentry/deltas
|
||||
if [[ ! -f $deltas ]]; then
|
||||
echo -e "%DELTAS%" >"$deltas"
|
||||
fi
|
||||
# get md5sum and compressed size of package
|
||||
md5sum=$(md5sum "$deltafile")
|
||||
md5sum=${md5sum%% *}
|
||||
csize=$(wc -c "$deltafile" | cut -d' ' -f1)
|
||||
|
||||
oldfile=$(xdelta3 printhdr "$deltafile" | grep "XDELTA filename (source)" | sed 's/.*: *//')
|
||||
newfile=$(xdelta3 printhdr "$deltafile" | grep "XDELTA filename (output)" | sed 's/.*: *//')
|
||||
|
||||
if grep -q "$oldfile.*$newfile" "$deltas"; then
|
||||
sed -i.backup "/$oldfile.*$newfile/d" "$deltas" && rm -f "$deltas.backup"
|
||||
fi
|
||||
msg2 "$(gettext "Adding 'deltas' entry : %s -> %s")" "$oldfile" "$newfile"
|
||||
echo "${deltafile##*/} $md5sum $csize $oldfile $newfile" >> "$deltas"
|
||||
|
||||
# copy updated deltas entry into "files" database
|
||||
local filesentry=$(echo "$pkgentry" | sed 's/\(.*\)\/db\//\1\/files\//')
|
||||
mkdir -p "$filesentry"
|
||||
cp $deltas "$filesentry"
|
||||
|
||||
return 0
|
||||
} # end db_write_delta
|
||||
|
||||
# remove a delta entry
|
||||
# arg1 - path to delta file
|
||||
db_remove_delta() {
|
||||
deltafile=$1
|
||||
filename=${deltafile##*/}
|
||||
pkgname=$(get_delta_pkgname "$deltafile")
|
||||
|
||||
pkgentry=$(find_pkgentry "$pkgname")
|
||||
if [[ -z $pkgentry ]]; then
|
||||
return 1
|
||||
fi
|
||||
deltas=$pkgentry/deltas
|
||||
if [[ ! -f $deltas ]]; then
|
||||
return 1
|
||||
fi
|
||||
if grep -q "$filename" "$deltas"; then
|
||||
sed -i.backup "/$filename/d" "$deltas" && rm -f "$deltas.backup"
|
||||
msg2 "$(gettext "Removing existing entry '%s'...")" "$filename"
|
||||
# empty deltas file contains only "%DELTAS%"
|
||||
if (( $(wc -l < "$deltas") == 1 )); then
|
||||
msg2 "$(gettext "Removing empty deltas file...")"
|
||||
rm "$deltas"
|
||||
fi
|
||||
|
||||
# copy updated deltas entry into "files" database
|
||||
local filesentry=$(echo "$pkgentry" | sed 's/\(.*\)\/db\//\1\/files\//')
|
||||
if [[ -f $deltas ]]; then
|
||||
mkdir -p "$filesentry"
|
||||
cp $deltas "$filesentry"
|
||||
else
|
||||
rm -f "$filesentry/deltas"
|
||||
fi
|
||||
|
||||
return 0
|
||||
fi
|
||||
|
||||
return 1
|
||||
} # end db_remove_delta
|
||||
|
||||
check_gpg() {
|
||||
if ! type -p gpg >/dev/null; then
|
||||
error "$(gettext "Cannot find the gpg binary! Is GnuPG installed?")"
|
||||
|
@ -285,7 +139,7 @@ check_gpg() {
|
|||
fi
|
||||
|
||||
if (( ! VERIFY )); then
|
||||
if ! gpg --list-key ${GPGKEY} &>/dev/null; then
|
||||
if ! gpg --list-secret-key ${GPGKEY:+"$GPGKEY"} &>/dev/null; then
|
||||
if [[ ! -z $GPGKEY ]]; then
|
||||
error "$(gettext "The key ${GPGKEY} does not exist in your keyring.")"
|
||||
elif (( ! KEY )); then
|
||||
|
@ -296,30 +150,6 @@ check_gpg() {
|
|||
fi
|
||||
}
|
||||
|
||||
check_xdelta() {
|
||||
local need_xdelta=0
|
||||
|
||||
if (( DELTA )); then
|
||||
need_xdelta=1
|
||||
else
|
||||
if [[ $cmd == "repo-add" ]]; then
|
||||
for f in ${args[@]:1}; do
|
||||
case $f in
|
||||
*.delta) need_xdelta=1 ;;
|
||||
*) ;;
|
||||
esac
|
||||
done
|
||||
fi
|
||||
fi
|
||||
|
||||
if (( need_xdelta )); then
|
||||
if ! type xdelta3 &>/dev/null; then
|
||||
error "$(gettext "Cannot find the xdelta3 binary! Is xdelta3 installed?")"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
# sign the package database once repackaged
|
||||
create_signature() {
|
||||
(( ! SIGN )) && return
|
||||
|
@ -327,11 +157,11 @@ create_signature() {
|
|||
local ret=0
|
||||
msg "$(gettext "Signing database '%s'...")" "${dbfile##*/.tmp.}"
|
||||
|
||||
local SIGNWITHKEY=""
|
||||
local SIGNWITHKEY=()
|
||||
if [[ -n $GPGKEY ]]; then
|
||||
SIGNWITHKEY="-u ${GPGKEY}"
|
||||
SIGNWITHKEY=(-u "${GPGKEY}")
|
||||
fi
|
||||
gpg --detach-sign --use-agent --no-armor ${SIGNWITHKEY} "$dbfile" &>/dev/null || ret=$?
|
||||
gpg --detach-sign --use-agent --no-armor "${SIGNWITHKEY[@]}" "$dbfile" &>/dev/null || ret=$?
|
||||
|
||||
if (( ! ret )); then
|
||||
msg2 "$(gettext "Created signature file '%s'")" "${dbfile##*/.tmp.}.sig"
|
||||
|
@ -364,10 +194,11 @@ verify_repo_extension() {
|
|||
local repofile=$1
|
||||
|
||||
case $repofile in
|
||||
*.db.tar.gz) TAR_OPT="z" ;;
|
||||
*.db.tar.bz2) TAR_OPT="j" ;;
|
||||
*.db.tar.xz) TAR_OPT="J" ;;
|
||||
*.db.tar.Z) TAR_OPT="Z" ;;
|
||||
*.db.tar.gz) TAR_OPT="-z" ;;
|
||||
*.db.tar.bz2) TAR_OPT="-j" ;;
|
||||
*.db.tar.xz) TAR_OPT="-J" ;;
|
||||
*.db.tar.zst) TAR_OPT="--zstd" ;;
|
||||
*.db.tar.Z) TAR_OPT="-Z" ;;
|
||||
*.db.tar) TAR_OPT="" ;;
|
||||
*) error "$(gettext "'%s' does not have a valid database archive extension.")" \
|
||||
"$repofile"
|
||||
|
@ -417,12 +248,20 @@ db_write_entry() {
|
|||
if [[ -d $tmpdir/db/$pkgname-$pkgver ]]; then
|
||||
warning "$(gettext "An entry for '%s' already existed")" "$pkgname-$pkgver"
|
||||
if (( ONLYADDNEW )); then
|
||||
return 0;
|
||||
return 0
|
||||
fi
|
||||
else
|
||||
if (( DELTA || RMEXISTING )); then
|
||||
pkgentry=$(find_pkgentry "$pkgname")
|
||||
if [[ -n $pkgentry ]]; then
|
||||
pkgentry=$(find_pkgentry "$pkgname")
|
||||
if [[ -n $pkgentry ]]; then
|
||||
|
||||
local version=$(sed -n '/^%VERSION%$/ {n;p;q}' "$pkgentry/desc")
|
||||
if (( $(vercmp "$version" "$pkgver") > 0 )); then
|
||||
warning "$(gettext "A newer version for '%s' is already present in database")" "$pkgname"
|
||||
if (( PREVENT_DOWNGRADE )); then
|
||||
return 0
|
||||
fi
|
||||
fi
|
||||
if (( RMEXISTING )); then
|
||||
local oldfilename="$(sed -n '/^%FILENAME%$/ {n;p;q;}' "$pkgentry/desc")"
|
||||
local oldfile="$(dirname "$1")/$oldfilename"
|
||||
fi
|
||||
|
@ -461,9 +300,6 @@ db_write_entry() {
|
|||
mkdir "$pkgname-$pkgver"
|
||||
pushd "$pkgname-$pkgver" >/dev/null
|
||||
|
||||
# restore an eventual deltas file
|
||||
[[ -f ../$pkgname.deltas ]] && mv "../$pkgname.deltas" deltas
|
||||
|
||||
# create desc entry
|
||||
msg2 "$(gettext "Creating '%s' db entry...")" 'desc'
|
||||
{
|
||||
|
@ -501,20 +337,6 @@ db_write_entry() {
|
|||
popd >/dev/null
|
||||
popd >/dev/null
|
||||
|
||||
# create a delta file
|
||||
if (( DELTA )); then
|
||||
if [[ -n $oldfilename ]]; then
|
||||
if [[ -f $oldfile ]]; then
|
||||
delta=$(pkgdelta -q "$oldfile" "$1")
|
||||
if [[ -f $delta ]]; then
|
||||
db_write_delta "$delta"
|
||||
fi
|
||||
else
|
||||
warning "$(gettext "Old package file not found: %s")" "$oldfilename"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# copy updated package entry into "files" database
|
||||
cp -a "$tmpdir/db/$pkgname-$pkgver" "$tmpdir/files/$pkgname-$pkgver"
|
||||
|
||||
|
@ -540,9 +362,7 @@ db_remove_entry() {
|
|||
local pkgentry=$(find_pkgentry "$pkgname")
|
||||
while [[ -n $pkgentry ]]; do
|
||||
notfound=0
|
||||
if [[ -f $pkgentry/deltas ]]; then
|
||||
mv "$pkgentry/deltas" "$tmpdir/db/$pkgname.deltas"
|
||||
fi
|
||||
|
||||
msg2 "$(gettext "Removing existing entry '%s'...")" \
|
||||
"${pkgentry##*/}"
|
||||
rm -rf "$pkgentry"
|
||||
|
@ -605,7 +425,7 @@ prepare_repo_db() {
|
|||
fi
|
||||
fi
|
||||
verify_signature "$dbfile"
|
||||
msg "$(gettext "Extracting database to a temporary location...")"
|
||||
msg "$(gettext "Extracting %s to a temporary location...")" "${dbfile##*/}"
|
||||
bsdtar -xf "$dbfile" -C "$tmpdir/$repo"
|
||||
else
|
||||
case $cmd in
|
||||
|
@ -636,16 +456,6 @@ add() {
|
|||
return 1
|
||||
fi
|
||||
|
||||
if [[ $1 = *-*-*_to_*-*-*.delta ]]; then
|
||||
deltafile=$1
|
||||
msg "$(gettext "Adding delta '%s'")" "$deltafile"
|
||||
if db_write_delta "$deltafile"; then
|
||||
return 0
|
||||
else
|
||||
return 1
|
||||
fi
|
||||
fi
|
||||
|
||||
pkgfile=$1
|
||||
if ! bsdtar -tqf "$pkgfile" .PKGINFO >/dev/null 2>&1; then
|
||||
error "$(gettext "'%s' is not a package file, skipping")" "$pkgfile"
|
||||
|
@ -658,27 +468,15 @@ add() {
|
|||
}
|
||||
|
||||
remove() {
|
||||
if [[ $1 = *-*-*_to_*-*-*.delta ]]; then
|
||||
deltafile=$1
|
||||
msg "$(gettext "Searching for delta '%s'...")" "$deltafile"
|
||||
if db_remove_delta "$deltafile"; then
|
||||
return 0
|
||||
else
|
||||
error "$(gettext "Delta matching '%s' not found.")" "$deltafile"
|
||||
return 1
|
||||
fi
|
||||
fi
|
||||
|
||||
pkgname=$1
|
||||
msg "$(gettext "Searching for package '%s'...")" "$pkgname"
|
||||
|
||||
if db_remove_entry "$pkgname"; then
|
||||
rm -f "$tmpdir/tree/$pkgname.deltas"
|
||||
return 0
|
||||
else
|
||||
if ! db_remove_entry "$pkgname"; then
|
||||
error "$(gettext "Package matching '%s' not found.")" "$pkgname"
|
||||
return 1
|
||||
fi
|
||||
|
||||
return 0
|
||||
}
|
||||
|
||||
rotate_db() {
|
||||
|
@ -737,11 +535,11 @@ create_db() {
|
|||
|
||||
pushd "$tmpdir/$repo" >/dev/null
|
||||
if ( shopt -s nullglob; files=(*); (( ${#files[*]} )) ); then
|
||||
bsdtar -c${TAR_OPT}f "$tempname" *
|
||||
bsdtar --uid 1 --uname root --gid 1 --gname root -c ${TAR_OPT} -f "$tempname" *
|
||||
else
|
||||
# we have no packages remaining? zip up some emptyness
|
||||
warning "$(gettext "No packages remain, creating empty database.")"
|
||||
bsdtar -c${TAR_OPT}f "$tempname" -T /dev/null
|
||||
bsdtar --uid 1 --uname root --gid 1 --gname root -c ${TAR_OPT} -f "$tempname" -T /dev/null
|
||||
fi
|
||||
popd >/dev/null
|
||||
|
||||
|
@ -821,7 +619,6 @@ declare -a args
|
|||
while (( $# )); do
|
||||
case $1 in
|
||||
-q|--quiet) QUIET=1;;
|
||||
-d|--delta) DELTA=1;;
|
||||
-n|--new) ONLYADDNEW=1;;
|
||||
-R|--remove) RMEXISTING=1;;
|
||||
--nocolor) USE_COLOR='n';;
|
||||
|
@ -836,6 +633,9 @@ while (( $# )); do
|
|||
-v|--verify)
|
||||
VERIFY=1
|
||||
;;
|
||||
-p|--prevent-downgrade)
|
||||
PREVENT_DOWNGRADE=1
|
||||
;;
|
||||
*)
|
||||
args+=("$1")
|
||||
;;
|
||||
|
@ -844,27 +644,11 @@ while (( $# )); do
|
|||
done
|
||||
|
||||
# check if messages are to be printed using color
|
||||
unset ALL_OFF BOLD BLUE GREEN RED YELLOW
|
||||
if [[ -t 2 && ! $USE_COLOR = "n" ]]; then
|
||||
# prefer terminal safe colored and bold text when tput is supported
|
||||
if tput setaf 0 &>/dev/null; then
|
||||
ALL_OFF="$(tput sgr0)"
|
||||
BOLD="$(tput bold)"
|
||||
BLUE="${BOLD}$(tput setaf 4)"
|
||||
GREEN="${BOLD}$(tput setaf 2)"
|
||||
RED="${BOLD}$(tput setaf 1)"
|
||||
YELLOW="${BOLD}$(tput setaf 3)"
|
||||
else
|
||||
ALL_OFF="\e[1;0m"
|
||||
BOLD="\e[1;1m"
|
||||
BLUE="${BOLD}\e[1;34m"
|
||||
GREEN="${BOLD}\e[1;32m"
|
||||
RED="${BOLD}\e[1;31m"
|
||||
YELLOW="${BOLD}\e[1;33m"
|
||||
fi
|
||||
if [[ -t 2 && $USE_COLOR != "n" ]]; then
|
||||
colorize
|
||||
else
|
||||
unset ALL_OFF BOLD BLUE GREEN RED YELLOW
|
||||
fi
|
||||
readonly ALL_OFF BOLD BLUE GREEN RED YELLOW
|
||||
|
||||
|
||||
REPO_DB_FILE=${args[0]}
|
||||
if [[ -z $REPO_DB_FILE ]]; then
|
||||
|
@ -888,8 +672,6 @@ if (( SIGN || VERIFY )); then
|
|||
check_gpg
|
||||
fi
|
||||
|
||||
check_xdelta
|
||||
|
||||
if (( VERIFY && ${#args[@]} == 1 )); then
|
||||
for repo in "db" "files"; do
|
||||
dbfile=${repodir}/$REPO_DB_PREFIX.$repo.$REPO_DB_SUFFIX
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue