Compare commits
5 Commits
Author | SHA1 | Date | |
---|---|---|---|
538e5051e5 | |||
ba2542c697 | |||
23c6cecdcc | |||
828844fd9a
|
|||
760f5e8281 |
@@ -8,6 +8,14 @@ _artixpkg_pkgbase() {
|
||||
ls -1 "${TREE_DIR_ARTIX}" | tr '\n' ' '
|
||||
}
|
||||
|
||||
_artixpkg_remotepkgbase() {
|
||||
curl -s "https://checkupdates.artixlinux.org/api/1.0/packages?startswith=$1"
|
||||
}
|
||||
|
||||
_artixpkg_maintainers() {
|
||||
curl -s "https://checkupdates.artixlinux.org/api/1.0/maintainers"
|
||||
}
|
||||
|
||||
_artixpkg_completion() {
|
||||
local cur prev comps comps_all repos autorepos teams agents cwords comp_cword_exflag
|
||||
source "${LIBDIR}"/pkg/db/db.sh 2>/dev/null
|
||||
@@ -147,12 +155,15 @@ _artixpkg_completion() {
|
||||
"-t"|"--team")
|
||||
COMPREPLY=($(compgen -W "$teams" -- ${cur}))
|
||||
;;
|
||||
"-m"|"--maintainer"|"-s"|"--search"|"-t"|"--team"|"-j"|"--jobs")
|
||||
"-m"|"--maintainer")
|
||||
COMPREPLY=($(compgen -W "$(_artixpkg_maintainers)" -- ${cur}))
|
||||
;;
|
||||
"-s"|"--search"|"-j"|"--jobs")
|
||||
# these flags expect a parameter
|
||||
COMPREPLY=()
|
||||
;;
|
||||
*)
|
||||
COMPREPLY=($(compgen -W "-m --maintainer --protocol -s --search -t --team -a --agent -j --jobs --all -h --help" -- ${cur}))
|
||||
COMPREPLY=($(compgen -W "-m --maintainer --protocol -s --search -t --team -a --agent -j --jobs --all -h --help $(_artixpkg_remotepkgbase ${cur})" -- ${cur}))
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
@@ -185,7 +196,10 @@ _artixpkg_completion() {
|
||||
;;
|
||||
"artixpkg git pull"*)
|
||||
case "${prev}" in
|
||||
"-t"|"--topic"|"-m"|"--maintainer"|"-j"|"--jobs")
|
||||
"-m"|"--maintainer")
|
||||
COMPREPLY=($(compgen -W "$(_artixpkg_maintainers)" -- ${cur}))
|
||||
;;
|
||||
"-t"|"--topic"|"-j"|"--jobs")
|
||||
# these flags expect a parameter
|
||||
COMPREPLY=()
|
||||
;;
|
||||
@@ -203,7 +217,10 @@ _artixpkg_completion() {
|
||||
;;
|
||||
"artixpkg git push"*)
|
||||
case "${prev}" in
|
||||
"-m"|"--maintainer"|"-t"|"--topic"|"-j"|"--jobs")
|
||||
"-m"|"--maintainer")
|
||||
COMPREPLY=($(compgen -W "$(_artixpkg_maintainers)" -- ${cur}))
|
||||
;;
|
||||
"-t"|"--topic"|"-j"|"--jobs")
|
||||
# this flag expects a parameter
|
||||
COMPREPLY=()
|
||||
;;
|
||||
@@ -234,7 +251,10 @@ _artixpkg_completion() {
|
||||
;;
|
||||
"artixpkg admin query"*)
|
||||
case "${prev}" in
|
||||
"-m"|"--maintainer"|"-t"|"--topic")
|
||||
"-m"|"--maintainer")
|
||||
COMPREPLY=($(compgen -W "$(_artixpkg_maintainers)" -- ${cur}))
|
||||
;;
|
||||
"-t"|"--topic")
|
||||
# this flag expects a parameter
|
||||
COMPREPLY=()
|
||||
;;
|
||||
|
@@ -16,14 +16,12 @@ artixpkg_git_push_usage() {
|
||||
OPTIONS
|
||||
-m, --maintainer NAME Push all packages of the named maintainer
|
||||
-t, --topic NAME Push all packages of the named topic
|
||||
-j, --jobs N Run up to N jobs in parallel (default: $(nproc))
|
||||
-h, --help Show this help text
|
||||
|
||||
EXAMPLES
|
||||
$ ${COMMAND} libfoo linux libbar
|
||||
$ ${COMMAND} --maintainer tux
|
||||
$ ${COMMAND} --topic mytopic
|
||||
$ ${COMMAND} -j 8 --topic mytopic
|
||||
_EOF_
|
||||
}
|
||||
|
||||
@@ -38,11 +36,6 @@ artixpkg_git_push() {
|
||||
# options
|
||||
local MAINTAINER=
|
||||
local TOPIC=
|
||||
local CONFIGURE_OPTIONS=()
|
||||
local jobs=
|
||||
jobs=$(nproc)
|
||||
|
||||
local command=${_ARTOOLS_COMMAND:-${BASH_SOURCE[0]##*/}}
|
||||
|
||||
while (( $# )); do
|
||||
case $1 in
|
||||
@@ -60,11 +53,6 @@ artixpkg_git_push() {
|
||||
TOPIC="$2"
|
||||
shift 2
|
||||
;;
|
||||
-j|--jobs)
|
||||
(( $# <= 1 )) && die "missing argument for %s" "$1"
|
||||
jobs=$2
|
||||
shift 2
|
||||
;;
|
||||
--)
|
||||
shift
|
||||
break
|
||||
@@ -90,19 +78,6 @@ artixpkg_git_push() {
|
||||
mapfile -t pkgbases < <(search_topic "${TOPIC}" | yq -P -r '.data | .[].name' | sort)
|
||||
fi
|
||||
|
||||
# parallelization
|
||||
if [[ ${jobs} != 1 ]] && (( ${#pkgbases[@]} > 1 )); then
|
||||
# force colors in parallel if parent process is colorized
|
||||
if [[ -n ${BOLD} ]]; then
|
||||
export ARTOOLS_COLOR=always
|
||||
fi
|
||||
if ! parallel --bar --jobs "${jobs}" "${command}" ::: "${pkgbases[@]}"; then
|
||||
die 'Failed to push some packages, please check the output'
|
||||
exit 1
|
||||
fi
|
||||
exit 0
|
||||
fi
|
||||
|
||||
for pkgbase in "${pkgbases[@]}"; do
|
||||
if [[ -d ${pkgbase} ]]; then
|
||||
( cd "${pkgbase}" || return
|
||||
|
@@ -9,6 +9,12 @@ set -e
|
||||
|
||||
PATCHDIR=${PATCHDIR:-"${WORKSPACE_DIR}/artix-patches"}
|
||||
|
||||
declare -A arch_map=(
|
||||
["archlinux-mirrorlist"]="pacman-mirrorlist"
|
||||
["artix-rebuild-order"]="arch-rebuild-order"
|
||||
["virtualbox-host-modules-artix"]="virtualbox-host-modules-arch"
|
||||
)
|
||||
|
||||
update_patches(){
|
||||
if [[ ! -d "${PATCHDIR}" ]]; then
|
||||
# ${GIT_ORG}
|
||||
@@ -25,10 +31,7 @@ update_patches(){
|
||||
patch_pkgbase(){
|
||||
local name="$1"
|
||||
local patches="${PATCHDIR}/patches/${name}"
|
||||
sed -e 's|https://www.archlinux.org/|https://www.artixlinux.org/|' \
|
||||
-e 's|(Arch Linux)|(Artix Linux)|' \
|
||||
-e 's|arch-meson|artix-meson|' \
|
||||
-i PKGBUILD
|
||||
sed -e 's|arch-meson|artix-meson|' -i PKGBUILD
|
||||
|
||||
if "${PATCH_MAINTAINER}" && [ -n "${PACKAGER}" ]; then
|
||||
sed -e 's|# Maintainer:|# Contributor:|' -i PKGBUILD
|
||||
@@ -146,9 +149,11 @@ artixpkg_repo_import() {
|
||||
fi
|
||||
( cd "${pkgbase}" || return
|
||||
|
||||
upstream="${arch_map["$pkgbase"]:-$pkgbase}"
|
||||
|
||||
stat_busy "Checking for upstream url"
|
||||
if ! git config --local --get remote.upstream.url &>/dev/null; then
|
||||
git remote add upstream "${GIT_UPSTREAM_URL}/${pkgbase}".git
|
||||
git remote add upstream "${GIT_UPSTREAM_URL}/${upstream}".git
|
||||
fi
|
||||
stat_done
|
||||
|
||||
|
Reference in New Issue
Block a user