Compare commits

..

2 Commits
0.21.1 ... 0.19

Author SHA1 Message Date
98ad5abd88 dpcker: upd pacman.conf 2020-06-08 02:15:45 +02:00
660a7025a7 add docker data 2020-06-08 02:10:01 +02:00
24 changed files with 661 additions and 367 deletions

View File

@@ -1,4 +1,4 @@
VERSION=0.21 VERSION=0.19
CHROOT_VERSION=0.10 CHROOT_VERSION=0.10
@@ -59,8 +59,7 @@ LN_COMMITPKG = \
multilib-testingpkg \ multilib-testingpkg \
multilib-stagingpkg \ multilib-stagingpkg \
kde-unstablepkg \ kde-unstablepkg \
gnome-unstablepkg \ gnome-unstablepkg
rebuildpkg
LN_BUILDPKG = \ LN_BUILDPKG = \
buildpkg-system \ buildpkg-system \
@@ -96,8 +95,7 @@ PKG_LIBS = \
PKG_UTIL = lib/util-pkg.sh PKG_UTIL = lib/util-pkg.sh
PKG_DATA = \ PKG_DATA = \
data/pacman/makepkg.conf \ data/pacman/makepkg.conf
data/valid-names.conf
PATCHES = \ PATCHES = \
$(wildcard data/patches/*.patch) $(wildcard data/patches/*.patch)
@@ -118,6 +116,12 @@ ISO_LIBS = \
ISO_UTIL = lib/util-iso.sh ISO_UTIL = lib/util-iso.sh
DOCKER_DATA = \
data/docker/pacman-docker.conf
DOCKER_ALPM = \
data/docker/package-cleanup.hook
DIRMODE = -dm0755 DIRMODE = -dm0755
FILEMODE = -m0644 FILEMODE = -m0644
MODE = -m0755 MODE = -m0755
@@ -155,6 +159,13 @@ $(BIN): %: %.in Makefile
clean: clean:
$(RM) $(BIN) $(UTIL) $(RM) $(BIN) $(UTIL)
install_docker:
install $(DIRMODE) $(DESTDIR)$(DATADIR)/$(TOOLS)
install $(FILEMODE) $(DOCKER_DATA) $(DESTDIR)$(DATADIR)/$(TOOLS)
install $(DIRMODE) $(DESTDIR)$(DATADIR)/libalpm/hooks
install $(FILEMODE) $(DOCKER_ALPM) $(DESTDIR)$(DATADIR)/libalpm/hooks
install_base: install_base:
install $(DIRMODE) $(DESTDIR)$(SYSCONFDIR)/$(TOOLS) install $(DIRMODE) $(DESTDIR)$(SYSCONFDIR)/$(TOOLS)
install $(FILEMODE) $(BASE_CONF) $(DESTDIR)$(SYSCONFDIR)/$(TOOLS) install $(FILEMODE) $(BASE_CONF) $(DESTDIR)$(SYSCONFDIR)/$(TOOLS)

View File

@@ -1,6 +1,6 @@
#!/bin/bash #!/bin/bash
# #
# Copyright (C) 2018-20 artoo@artixlinux.org # Copyright (C) 2018-19 artoo@artixlinux.org
# Copyright (C) 2018 Artix Linux Developers # Copyright (C) 2018 Artix Linux Developers
# #
# This program is free software; you can redistribute it and/or modify # This program is free software; you can redistribute it and/or modify
@@ -33,66 +33,34 @@ batch_move() {
done < $pkglist done < $pkglist
} }
batch_create() { # batch_upgrade() {
local name="${1:-pkg_create}" # local pkglist=${TREE_DIR_ARTIX}/pkg_upgrades.list
local pkglist=${TREE_DIR_ARTIX}/$name.list # [[ -f $pkglist ]] || die "%s does not exist!" "$pkglist"
[[ -f $pkglist ]] || die "%s does not exist!" "$pkglist" # while read entry;do
while read entry;do # local pkg=${entry#*:}
local pkg=${entry##*:} # local dest=${entry%:*}
local group=${entry%:*} # echo "buildtree -i -p ${pkg}"
group=${group#*:} # echo "${dest}pkg -u -p ${pkg}"
local team=${entry%%:*} # done < $pkglist
if ${runlist}; then # }
buildtree -n -p "${pkg}" -t "${team}" -g "${group}"
buildtree -i -p "${pkg}"
commitpkg -p "${pkg}"
else
msg "%s" "buildtree -n -p ${pkg} -t ${team} -g ${group}"
msg2 "%s" "buildtree -i -p ${pkg}"
msg2 "%s" "commitpkg -p ${pkg}"
fi
done < $pkglist
}
batch_update() {
local name="${1:-pkg_upgrades}"
local pkglist=${TREE_DIR_ARTIX}/$name.list
[[ -f $pkglist ]] || die "%s does not exist!" "$pkglist"
while read entry;do
local pkg=${entry#*:}
local dest=${entry%:*}
if ${runlist}; then
buildtree -i -p "${pkg}"
"${dest}"pkg -u -p "${pkg}"
else
msg "buildtree -i -p ${pkg}"
msg2 "${dest}pkg -u -p ${pkg}"
fi
done < $pkglist
}
usage() { usage() {
echo "Usage: ${0##*/} [optional listname]" echo "Usage: ${0##*/} [optional listname]"
echo ' -r Run generated commands' echo ' -r Run generated commands'
echo ' -c Create subrepos from list'
echo ' -u Update subrepos from list'
echo ' -h This help' echo ' -h This help'
echo '' echo ''
echo '' echo ''
exit $1 exit $1
} }
movelistname=pkg_moves
runlist=false runlist=false
create=false
update=false
opts='rcuh' opts='rh'
while getopts "${opts}" arg; do while getopts "${opts}" arg; do
case "${arg}" in case "${arg}" in
r) runlist=true ;; r) runlist=true ;;
c) create=true ;;
u) update=true ;;
h|?) usage 0 ;; h|?) usage 0 ;;
*) echo "invalid argument '${arg}'"; usage 1 ;; *) echo "invalid argument '${arg}'"; usage 1 ;;
esac esac
@@ -100,12 +68,6 @@ done
shift $(($OPTIND - 1)) shift $(($OPTIND - 1))
listname="$1"; shift movelistname="$1"; shift
if ${create};then batch_move "$movelistname"
batch_create "${listname}"
elif ${update};then
batch_update "${listname}"
else
batch_move "${listname}"
fi

View File

@@ -55,7 +55,7 @@ patch_pkg(){
pull_tree_arch(){ pull_tree_arch(){
cd ${TREE_DIR_ARCH} cd ${TREE_DIR_ARCH}
for tree in ${ARCH_TREE[@]};do for tree in ${TREE_NAMES_ARCH[@]};do
if [[ -d ${tree} ]];then if [[ -d ${tree} ]];then
cd ${tree} cd ${tree}
pull_tree "${tree}" "$(get_local_head)" "Arch" pull_tree "${tree}" "$(get_local_head)" "Arch"
@@ -94,13 +94,15 @@ show_deps(){
. $src/PKGBUILD 2>/dev/null . $src/PKGBUILD 2>/dev/null
[[ $arch == 'any' ]] && CARCH=any
local archver=$(get_full_version) local archver=$(get_full_version)
[[ -n ${pkgbase} ]] && msg2 "pkgbase: %s" "${pkgbase}" [[ -n ${pkgbase} ]] && msg2 "pkgbase: %s" "${pkgbase}"
msg2 "pkgname: %s" "${pkgname[*]}" msg2 "pkgname: %s" "${pkgname[*]}"
[[ -n $pkgdesc ]] && msg2 "pkgdesc: %s" "${pkgdesc}" [[ -n $pkgdesc ]] && msg2 "pkgdesc: %s" "${pkgdesc}"
msg2 "Arch Version: %s" "$archver" msg2 "Arch Version: %s" "$archver"
msg2 "arch: %s" "$arch" msg2 "arch: %s" "$CARCH"
[[ -n ${makedepends[@]} ]] && msg2 "makedepends: %s" "${makedepends[*]}" [[ -n ${makedepends[@]} ]] && msg2 "makedepends: %s" "${makedepends[*]}"
[[ -n ${checkdepends[@]} ]] && msg2 "checkdepends: %s" "${checkdepends[*]}" [[ -n ${checkdepends[@]} ]] && msg2 "checkdepends: %s" "${checkdepends[*]}"
@@ -131,9 +133,9 @@ from_arch(){
[[ -z $srcpath ]] && die "Package '%s' does not exist!" "${PACKAGE}" [[ -z $srcpath ]] && die "Package '%s' does not exist!" "${PACKAGE}"
local repo=$(find_repo "$srcpath") local repo=$(find_repo "$srcpath")
msg "repo: %s" "${repo#*/}" msg "repo: %s" "$repo"
local archpath=$srcpath/$repo local archpath=$srcpath/repos/$repo
local artixpath=$(find_pkg "${TREE_DIR_ARTIX}" "${PACKAGE}") local artixpath=$(find_pkg "${TREE_DIR_ARTIX}" "${PACKAGE}")
show_deps "$archpath" show_deps "$archpath"
@@ -154,8 +156,8 @@ view_build(){
local archpath=$(find_pkg "${TREE_DIR_ARCH}" "${PACKAGE}") local archpath=$(find_pkg "${TREE_DIR_ARCH}" "${PACKAGE}")
[[ -z $archpath ]] && die "Package '%s' does not exist!" "${PACKAGE}" [[ -z $archpath ]] && die "Package '%s' does not exist!" "${PACKAGE}"
local repo=$(find_repo "${archpath}") local repo=$(find_repo "${archpath}")
archpath=$archpath/$repo archpath=$archpath/repos/$repo
msg "repo: %s" "${repo#*/}" msg2 "repo: %s" "$repo"
show_deps "$archpath" show_deps "$archpath"
} }
@@ -176,7 +178,7 @@ sync_repos(){
if ${sync_group}; then if ${sync_group}; then
pull_tree_artix "${GROUP}" pull_tree_artix "${GROUP}"
else else
pull_tree_artix "${ARTIX_TREE[*]}" pull_tree_artix "${TREE_NAMES_ARTIX[*]}"
fi fi
fi fi
} }
@@ -199,7 +201,7 @@ check=false
PACKAGE='' PACKAGE=''
TEAM='community' TEAM='community'
GROUP=${ARTIX_TREE[0]} GROUP=${TREE_NAMES_ARTIX[0]}
usage() { usage() {
echo "Usage: ${0##*/} [options]" echo "Usage: ${0##*/} [options]"

View File

@@ -16,45 +16,31 @@
prepare_artools prepare_artools
prepare_commit(){ get_path(){
# create new layout, copy & remove repos local repo="$1" pkg=trunk/PKGBUILD
if [[ -d repos ]]; then if [[ $repo != trunk ]]; then
msg "Switching to new layout ..." [[ -f repos/$repo-${ARCH}/PKGBUILD ]] && pkg=repos/$repo-${ARCH}/PKGBUILD
[[ ! -d "$CARCH" ]] && mkdir "$CARCH" [[ -f repos/$repo-any/PKGBUILD ]] && pkg=repos/$repo-any/PKGBUILD
for r in $(ls repos); do
mkdir "$CARCH/${r%-*}"
cp repos/"${r}"/* "$CARCH/${r%-*}/"
git add "$CARCH/${r%-*}"
done
git rm -r repos
git commit -m "switch to new repo layout"
msg "Done switch"
fi
if [[ $action == 'add' ]] || [[ $action == 'move' ]] ;then
[[ -d "$CARCH/${REPO_DEST}" ]] && git rm -r "$CARCH/${REPO_DEST}"
[[ ! -d "$CARCH" ]] && mkdir "$CARCH"
[[ ! -d "$CARCH/${REPO_DEST}" ]] && mkdir "$CARCH/${REPO_DEST}"
fi fi
echo $pkg
} }
check_rebuild(){ prepare_commit(){
if [[ -d "$CARCH"/rebuild ]] && [[ "${REPO_DEST}" == 'staging' ]]; then local dest="$1" to_rm="${2:-none}"
git rm -r "$CARCH"/rebuild if [[ -d repos/$to_rm ]]; then
git commit -m "switch from rebuild to staging" git rm -r repos/$to_rm
elif [[ -d "$CARCH"/staging ]] && [[ "${REPO_DEST}" == 'rebuild' ]]; then git commit -m "change of package arch"
git rm -r "$CARCH"/staging
git commit -m "switch from staging to rebuild"
fi fi
[[ -d repos/$dest ]] && git rm -r repos/$dest
[[ ! -d repos ]] && mkdir repos
[[ ! -d repos/$dest ]] && mkdir repos/$dest
} }
check_team(){ check_team(){
if [[ "${REPO_SRC}" == "core" && "${REPO_DEST}" == "extra" ]] || \ if [[ ${REPO_SRC} == "core" && ${REPO_DEST} == "extra" ]] || \
[[ "${REPO_SRC}" == "extra" && "${REPO_DEST}" == "core" ]] || \ [[ ${REPO_SRC} == "extra" && ${REPO_DEST} == "core" ]] || \
[[ "${REPO_SRC}" == "extra" && "${REPO_DEST}" == "community" ]] || \ [[ ${REPO_SRC} == "extra" && ${REPO_DEST} == "community" ]] || \
[[ "${REPO_SRC}" == "community" && "${REPO_DEST}" == "extra" ]] ;then [[ ${REPO_SRC} == "community" && ${REPO_DEST} == "extra" ]] ;then
local org=$(get_pkg_org "${PACKAGE}") local org=$(get_pkg_org "${PACKAGE}")
add_repo_to_team "${PACKAGE}" "$org" "${REPO_DEST}" add_repo_to_team "${PACKAGE}" "$org" "${REPO_DEST}"
@@ -62,83 +48,118 @@ check_team(){
fi fi
} }
config() { commit_pkg(){
[[ "${REPO_SRC}" != 'trunk' ]] && pkgbuild="$CARCH/${REPO_SRC}"/PKGBUILD
if [[ ! -f "$pkgbuild" ]]; then
pkgbuild=repos/"${REPO_SRC}-${CARCH}"/PKGBUILD
[[ -f repos/"${REPO_SRC}"-any/PKGBUILD ]] && pkgbuild=repos/"${REPO_SRC}"-any/PKGBUILD
fi
}
commit_pkg() {
if ${remove};then
action='remove'
if [[ "${REPO_SRC}" == 'trunk' ]];then
local pkg=${PACKAGE}
git rm -r trunk
else
local pkg="${PACKAGE}-$(get_full_version)"
prepare_commit
git rm -r "$CARCH/${REPO_SRC}"
fi
local commit_msg="[${REPO_SRC}] '$pkg' ${action}"
msg "Action: %s" "$commit_msg"
else
action='modify'
local commit_msg="[${REPO_SRC}] '${PACKAGE}-$(get_full_version)' ${action}"
msg "Action: %s" "$commit_msg"
git add .
fi
git commit -m "$commit_msg"
}
repo_commit_pkg() {
if [[ "${REPO_SRC}" == 'trunk' ]];then
action='add'
prepare_commit
check_rebuild
cp trunk/* "$CARCH/${REPO_DEST}"/
else
action='move'
[[ ! -f $pkgbuild ]] && die "%s does not exist!" "$pkgbuild"
prepare_commit
cp "$CARCH/${REPO_SRC}"/* "$CARCH/${REPO_DEST}"/
git rm -r "$CARCH/${REPO_SRC}"
fi
local commit_msg="[${REPO_SRC}] -> [${REPO_DEST}] '${PACKAGE}-$(get_full_version)' ${action}"
msg "Action: %s" "$commit_msg"
git add .
git commit -m "$commit_msg"
}
run(){
local artixpath=$(find_pkg "${TREE_DIR_ARTIX}" "${PACKAGE}") local artixpath=$(find_pkg "${TREE_DIR_ARTIX}" "${PACKAGE}")
if [[ -n ${artixpath} ]];then if [[ -n ${artixpath} ]];then
local group=${artixpath%/*} local group=${artixpath%/*}
cd ${group} cd ${group}
local head=$(get_local_head) local head=$(get_local_head)
cd ${artixpath} cd ${artixpath}
config
. $pkgbuild
if [[ "${cmd}" == 'commitpkg' ]];then local pkgbuild=$(get_path "${REPO_SRC}")
commit_pkg
. $pkgbuild
[[ $arch == 'any' ]] && CARCH=any
local version=$(get_full_version)
local commit_msg=""
if ${remove};then
local action='remove'
if [[ "${REPO_SRC}" == 'trunk' ]];then
local pkg=${PACKAGE}
git rm -r trunk
else
local pkg="${PACKAGE}-$version"
git rm -r repos/"${REPO_SRC}-$CARCH"
fi
commit_msg="[${REPO_SRC}] '$pkg' ${action}"
msg "Action: %s" "$commit_msg"
else else
repo_commit_pkg local action='modify'
commit_msg="[${REPO_SRC}] '${PACKAGE}-$version' ${action}"
msg "Action: %s" "$commit_msg"
git add .
fi fi
git commit -m "$commit_msg"
cd ${group} cd ${group}
${push} && pull_tree "${group##*/}" "$head" ${push} && pull_tree "${group##*/}" "$head"
# subrepo_pull "${PACKAGE}"
subrepo_push "${PACKAGE}"
subrepo_clean "${PACKAGE}"
${push} && push_tree "${group##*/}"
git prune
else
error "Package '%s' does not exist!" "${PACKAGE}"
fi
}
get_rm_arch(){
local rm_arch='none'
case "$CARCH" in
'any') rm_arch="${REPO_DEST}-x86_64" ;;
'x86_64') rm_arch="${REPO_DEST}-any" ;;
esac
echo $rm_arch
}
repo_commit_pkg(){
local artixpath=$(find_pkg "${TREE_DIR_ARTIX}" "${PACKAGE}")
if [[ -n ${artixpath} ]];then
local group=${artixpath%/*}
cd ${group}
local head=$(get_local_head)
cd ${artixpath}
local pkgbuild=$(get_path "${REPO_SRC}")
. $pkgbuild
[[ $arch == 'any' ]] && CARCH=any
local version=$(get_full_version)
if [[ ${REPO_SRC} == 'trunk' ]];then
local action='add'
local dest="${REPO_DEST}-$CARCH"
prepare_commit "$dest" "$(get_rm_arch)"
cp trunk/* repos/$dest/
else
local action='move'
local src="${REPO_SRC}-$CARCH" dest="${REPO_DEST}-$CARCH"
[[ ! -f repos/$src/PKGBUILD ]] && die "%s does not exist!" "repos/$src/PKGBUILD"
prepare_commit "$dest" "$(get_rm_arch)"
cp repos/$src/* repos/$dest/
git rm -r repos/$src
fi
local commit_msg="[${REPO_SRC}] -> [${REPO_DEST}] '${PACKAGE}-$version' ${action}"
msg "Action: %s" "$commit_msg"
git add .
git commit -m "$commit_msg"
cd ${group}
${push} && pull_tree "${group##*/}" "$head"
# subrepo_pull "${PACKAGE}" # subrepo_pull "${PACKAGE}"
subrepo_push "${PACKAGE}" subrepo_push "${PACKAGE}"
subrepo_clean "${PACKAGE}" subrepo_clean "${PACKAGE}"
@@ -147,20 +168,20 @@ run(){
git prune git prune
[[ "${cmd}" != 'commitpkg' ]] && check_team check_team
else else
die "Package '%s' does not exist!" "${PACKAGE}" error "Package '%s' does not exist!" "${PACKAGE}"
fi fi
} }
is_valid_repo(){ is_valid_repo(){
. "${DATADIR}"/valid-names.conf local src="$1" cases=
local _valid=trunk set_arch_repos true true true
for repo in ${valid_names[@]}; do for r in ${ARCH_REPOS[@]};do
_valid=${repo:-}${repo:+|}$_valid cases=${cases:-}${cases:+|}${r}
done done
eval "case ${REPO_SRC} in eval "case $src in
${_valid}) return 0 ;; ${cases}|trunk) return 0 ;;
*) return 1 ;; *) return 1 ;;
esac" esac"
} }
@@ -172,8 +193,6 @@ PACKAGE=''
remove=false remove=false
push=false push=false
pkgbuild=trunk/PKGBUILD
cmd=${0##*/} cmd=${0##*/}
REPO_DEST=${cmd%pkg} REPO_DEST=${cmd%pkg}
@@ -206,8 +225,12 @@ done
shift $(($OPTIND - 1)) shift $(($OPTIND - 1))
if $(is_valid_repo);then if $(is_valid_repo "${REPO_SRC}");then
run if [[ "${cmd}" == 'commitpkg' ]];then
commit_pkg
else
repo_commit_pkg
fi
else else
die "source repository '%s' is not valid!" "${REPO_SRC}" error "source repository '%s' is not valid!" "${REPO_SRC}"
fi fi

View File

@@ -19,41 +19,46 @@ prepare_artools
get_import_path(){ get_import_path(){
local pkg="$1" import_path= local pkg="$1" import_path=
for tree in ${ARCH_TREE[@]};do for tree in ${TREE_NAMES_ARCH[@]};do
[[ -d ${TREE_DIR_ARCH}/$tree/$pkg/repos ]] && import_path=${TREE_DIR_ARCH}/$tree/$pkg [[ -d ${TREE_DIR_ARCH}/$tree/$pkg/repos ]] && import_path=${TREE_DIR_ARCH}/$tree/$pkg
done done
echo $import_path echo $import_path
} }
compare_m(){ compare_m(){
local artixver="$1" artixrepo="$2" archver="$3" archrepo="$4"
local result=$(vercmp "$artixver" "$archver") local result=$(vercmp "$artixver" "$archver")
case ${artixrepo} in if [[ $artixrepo == *testing* ]] || [[ $artixrepo == *staging* ]]; then
*testing*|*staging*|*rebuild) if [[ "$archrepo" == "$artixrepo" ]]; then
if [[ "${a}" == "${b}" ]] || [[ "${a}" == 'staging' && "${b}" == 'rebuild' ]]; then msg_row "${table}" "${archrepo%-*}" "${artixrepo%-*}" "$pkg" "$archver" "$artixver" "${group#*-}"
msg_row "${table}" "${a}" "${b}" "$pkg" "$archver" "$artixver" "${group#*-}" else
else msg_row_notify "${table}" "${archrepo%-*}" "${artixrepo%-*}" "$pkg" "$archver" "$artixver" "${group#*-}"
msg_row_notify "${table}" "${a}" "${b}" "$pkg" "$archver" "$artixver" "${group#*-}" if [[ -n "$archrepo" ]]; then
if [[ -n "$archrepo" ]]; then printf "%s\n" "${archrepo%-*}:${artixrepo%-*}:$pkg" >> ${TREE_DIR_ARTIX}/pkg_moves.list
printf "%s\n" "${a}:${b}:$pkg" >> ${TREE_DIR_ARTIX}/pkg_moves.list
fi
fi fi
;; fi
esac
fi
} }
compare_u(){ compare_u(){
local artixver="$1" artixrepo="$2" archver="$3" archrepo="$4"
local result=$(vercmp "$artixver" "$archver") local result=$(vercmp "$artixver" "$archver")
if [ $result -eq -1 ];then if [ $result -eq -1 ];then
msg_row_upgrade "${table}" "${a}" "${b}" "$pkg" "$archver" "$artixver" "${group#*-}" msg_row_upgrade "${table}" "${archrepo%-*}" "${artixrepo%-*}" "$pkg" "$archver" "$artixver" "${group#*-}"
printf "%s\n" "${a}:$pkg" >> ${TREE_DIR_ARTIX}/pkg_upgrades.list printf "%s\n" "${archrepo%-*}:$pkg" >> ${TREE_DIR_ARTIX}/pkg_upgrades.list
fi fi
} }
compare_d(){ compare_d(){
local artixver="$1" artixrepo="$2" archver="$3" archrepo="$4"
local result=$(vercmp "$artixver" "$archver") local result=$(vercmp "$artixver" "$archver")
if [ $result -eq 1 ];then if [ $result -eq 1 ];then
if [[ -n "$archver" ]] && [[ -n "$archrepo" ]];then if [[ -n "$archver" ]] && [[ -n "$archrepo" ]];then
msg_row_downgrade "${table}" "${a}" "${b}" "$pkg" "$archver" "$artixver" "${group#*-}" msg_row_downgrade "${table}" "${archrepo%-*}" "${artixrepo%-*}" "$pkg" "$archver" "$artixver" "${group#*-}"
fi fi
fi fi
} }
@@ -64,27 +69,22 @@ pre_compare(){
group=${group##*/} group=${group##*/}
local pkg=${pkgpath##*/} local pkg=${pkgpath##*/}
local artixrepo=$(find_repo "$pkgpath") local artixrepo=$(find_repo "$pkgpath")
local pkgbuild=$pkgpath/$artixrepo/PKGBUILD local pkgbuild=$pkgpath/repos/$artixrepo/PKGBUILD
if [[ -f $pkgbuild ]]; then if [[ -f $pkgbuild ]];then
. $pkgbuild 2>/dev/null . $pkgbuild 2>/dev/null
local artixver=$(get_full_version) local artixver=$(get_full_version)
local archpath=$(get_import_path $pkg) local archpath=$(get_import_path $pkg)
local archrepo=$(find_repo "${archpath}") local archrepo=$(find_repo "${archpath}")
pkgbuild=$archpath/$archrepo/PKGBUILD pkgbuild=$archpath/repos/$archrepo/PKGBUILD
local node=${artixrepo%/*}
local a=${archrepo#*/} b=${artixrepo#*/}
a="${a%-*}"
[[ "$node" != "$CARCH" ]] && b=${b%-*} if [[ -f "$pkgbuild" ]];then
if [[ -f "$pkgbuild" ]]; then
. $pkgbuild 2>/dev/null . $pkgbuild 2>/dev/null
local archver=$(get_full_version) local archver=$(get_full_version)
fi fi
"$func" "$func" "$artixver" "$artixrepo" "$archver" "$archrepo"
unset pkgver epoch pkgrel artixver archver pkgbuild archpath unset pkgver epoch pkgrel artixver archver pkgbuild archpath
fi fi
@@ -107,7 +107,7 @@ compare_move(){
tree_loop(){ tree_loop(){
local func="$1" local func="$1"
for tree in ${ARTIX_TREE[@]}; do for tree in ${TREE_NAMES_ARTIX[@]};do
local pkgs=$(find ${TREE_DIR_ARTIX}/$tree -name trunk) local pkgs=$(find ${TREE_DIR_ARTIX}/$tree -name trunk)
for package in ${pkgs[@]}; do for package in ${pkgs[@]}; do
"$func" "$package" "$func" "$package"
@@ -139,11 +139,11 @@ show_move_table(){
update_db_cache(){ update_db_cache(){
msg "Updating database cache" msg "Updating database cache"
for repo in "${searchrepos[@]}"; do for repo in "${searchrepos[@]}"; do
local cachedir=${db_cache_dir}/${LINKSDBEXT}/${CARCH}/${repo} local cachedir=${db_cache_dir}/${LINKSDBEXT}/${ARCH}/${repo}
rm -rf "$cachedir" rm -rf "$cachedir"
mkdir -p "$cachedir" mkdir -p "$cachedir"
msg2 "%s" "$repo" msg2 "%s" "$repo"
curl -L -s "${REPOS_MIRROR}/${repo}/os/${CARCH}/${repo}.${LINKSDBEXT}" \ curl -L -s "${REPOS_MIRROR}/${repo}/os/${ARCH}/${repo}.${LINKSDBEXT}" \
| bsdtar -xf - -C "$cachedir" | bsdtar -xf - -C "$cachedir"
done done
msg "Done" msg "Done"
@@ -152,7 +152,7 @@ update_db_cache(){
query_db() { query_db() {
for repo in "${searchrepos[@]}"; do for repo in "${searchrepos[@]}"; do
local prefix= local prefix=
local db=${db_cache_dir}/${LINKSDBEXT}/${CARCH}/${repo}/ local db=${db_cache_dir}/${LINKSDBEXT}/${ARCH}/${repo}/
if [[ -d ${db} ]]; then if [[ -d ${db} ]]; then
while read -rd '' pkg; do while read -rd '' pkg; do
read -r match read -r match
@@ -173,7 +173,7 @@ show_lib_table() {
is_db_entry() { is_db_entry() {
local pkgname="$1" repo="${REPOS[$2]}" local pkgname="$1" repo="${REPOS[$2]}"
if [[ -d ${db_cache_dir}/${LINKSDBEXT}/${CARCH}/$repo/$pkgname ]];then if [[ -d ${db_cache_dir}/${LINKSDBEXT}/${ARCH}/$repo/$pkgname ]];then
return 0 return 0
fi fi
return 1 return 1
@@ -181,23 +181,33 @@ is_db_entry() {
check_db(){ check_db(){
local pkgpath="${1%/*}" local pkgpath="${1%/*}"
local pkg=${pkgpath##*/}
local sarch=(any ${ARCH})
for repo in ${!REPOS[@]};do for repo in ${ARCH_REPOS[@]};do
local pkgbuild= for a in ${sarch[@]};do
[[ -f $pkgpath/$CARCH/$repo/PKGBUILD ]] && pkgbuild=$pkgpath/$CARCH/$repo/PKGBUILD
[[ -f $pkgpath/repos/$repo-$CARCH/PKGBUILD ]] && pkgbuild=$pkgpath/repos/$repo-$CARCH/PKGBUILD
[[ -f $pkgpath/repos/$repo-any/PKGBUILD ]] && pkgbuild=$pkgpath/repos/$repo-any/PKGBUILD
. $pkgbuild 2>/dev/null local pkgbuild=$pkgpath/repos/$repo-$a/PKGBUILD
local artixver=$(get_full_version)
for name in ${pkgname[@]};do
if ! is_db_entry "$name-$artixver" "$repo"; then if [[ -f $pkgbuild ]];then
msg_row "${tableU}" "$repo" "$name" "$artixver" "false"
. $pkgbuild 2>/dev/null
local artixver=$(get_full_version)
local is_entry=false
for name in ${pkgname[@]};do
if is_db_entry "$name-$artixver" "$repo";then
is_entry=true
fi
if ! $is_entry;then
msg_row "${tableU}" "$repo" "$name" "$artixver" "$is_entry"
fi
done
unset artixver is_entry pkgbuild pkgver epoch pkgname pkgbase
fi fi
done done
unset artixver pkgbuild pkgver epoch pkgname pkgbase
done done
} }

View File

@@ -16,28 +16,46 @@
prepare_artools prepare_artools
get_pkgbasename(){
local pkg="$1"
local pkgbasename name ver rel arch
pkgbasename=${pkg%.pkg.tar*}
arch=${pkgbasename##*-}
pkgbasename=${pkgbasename%-"$arch"}
rel=${pkgbasename##*-}
pkgbasename=${pkgbasename%-"$rel"}
ver=${pkgbasename##*-}
name=${pkgbasename%-"$ver"}
echo $name
}
add(){ add(){
pkg=${pkgname%.*} packages+=("$pkg.$ext")
for ext in zst xz;do action='add'
if pkgfile=$(find_cached_pkgfile "$pkg.$ext");then ln -sf "${pkgfile}"{,.sig} "$repo_path"/
msg "Found: %s" "${pkgfile}"
packages+=("$pkg.$ext")
action='add'
ln -sf "${pkgfile}"{,.sig} "$repo_path"/
fi
done
} }
remove(){ remove(){
packages+=("$pkgname") local to_remove=$(get_pkgbasename "$pkg.$ext")
packages+=("$to_remove")
action='remove' action='remove'
rm "$repo_path"/"$pkgname"*pkg.tar* rm "$repo_path"/"$to_remove"*pkg.tar*
} }
repo_action(){ repo_action(){
local packages=() action= func="$1" local packages=() action= func="$1"
for pkgname in ${passfiles[@]}; do for pkgname in ${passfiles[@]}; do
"$func" pkg=${pkgname%.*}
for ext in zst xz;do
if pkgfile=$(find_cached_pkgfile "$pkg.$ext");then
msg "Found: %s" "${pkgfile}"
"$func"
fi
done
done done
cd $repo_path cd $repo_path
if [[ -n "$action" ]]; then if [[ -n "$action" ]]; then
@@ -86,7 +104,7 @@ passfiles="$@"
prepare_dir "${REPOS_ROOT}" prepare_dir "${REPOS_ROOT}"
repo_path=${REPOS_ROOT}/${dest_repo}/os/${CARCH} repo_path=${REPOS_ROOT}/${dest_repo}/os/${ARCH}
if [[ -n ${passfiles[@]} ]]; then if [[ -n ${passfiles[@]} ]]; then
if ${add_pkg}; then if ${add_pkg}; then

View File

@@ -14,7 +14,7 @@
. @libdir@/artools/util-base.sh . @libdir@/artools/util-base.sh
srcyaml_write_attr(){ write_attr(){
local ident1="$1" ident2="$2" ident3="$3" local ident1="$1" ident2="$2" ident3="$3"
local attrname=$4 attrvalues=("${@:5}") local attrname=$4 attrvalues=("${@:5}")
@@ -24,41 +24,47 @@ srcyaml_write_attr(){
attrvalues=("${attrvalues[@]%[[:space:]]}") attrvalues=("${attrvalues[@]%[[:space:]]}")
case $attrname in case $attrname in
pkgver|pkgrel|epoch|url|install|changelog) makedepends|checkdepends|depends|provides|arch)
for v in ${attrvalues[@]};do
Yaml+=$(write_yaml_map $ident3 "$attrname" "$v")
done
;;
*)
Yaml+=$(write_yaml_map $ident1 "$attrname") Yaml+=$(write_yaml_map $ident1 "$attrname")
for v in ${attrvalues[@]};do for v in ${attrvalues[@]};do
Yaml+=$(write_yaml_seq $ident2 "$v") Yaml+=$(write_yaml_seq $ident2 "$v")
done done
;; ;;
*)
for v in ${attrvalues[@]};do
Yaml+=$(write_yaml_map $ident3 "$attrname" "$v")
done
;;
esac esac
} }
pkgbuild_extract_to_yaml() { extract_info() {
local pkgname=$1 attrname=$2 isarray=$3 outvalue= local pkgname=$1 attrname=$2 isarray=$3 outvalue=
if get_pkgbuild_attribute "$pkgname" "$attrname" "$isarray" 'outvalue'; then if get_pkgbuild_attribute "$pkgname" "$attrname" "$isarray" 'outvalue'; then
[[ -z $pkgname ]] && srcyaml_write_attr 2 4 2 "$attrname" "${outvalue[@]}" [[ -z $pkgname ]] && write_attr 2 4 2 "$attrname" "${outvalue[@]}"
[[ -n $pkgname ]] && srcyaml_write_attr 4 6 2 "$attrname" "${outvalue[@]}" [[ -n $pkgname ]] && write_attr 4 6 2 "$attrname" "${outvalue[@]}"
fi fi
} }
srcyaml_write_section_details() { write_details() {
local attr package_arch a local attr package_arch a
local multivalued_arch_attrs=(source provides conflicts depends replaces local multivalued_arch_attrs=(provides depends makedepends checkdepends)
optdepends makedepends checkdepends)
# "${known_hash_algos[@]/%/sums}") local singlevalued=()
local multivalued=(arch provides depends checkdepends)
if [[ -z "$1" ]];then
singlevalued=(pkgver pkgrel epoch)
multivalued=(arch provides depends makedepends checkdepends)
fi
for attr in "${singlevalued[@]}"; do for attr in "${singlevalued[@]}"; do
pkgbuild_extract_to_yaml "$1" "$attr" 0 extract_info "$1" "$attr" 0
done done
for attr in "${multivalued[@]}"; do for attr in "${multivalued[@]}"; do
pkgbuild_extract_to_yaml "$1" "$attr" 1 extract_info "$1" "$attr" 1
done done
get_pkgbuild_attribute "$1" 'arch' 1 'package_arch' get_pkgbuild_attribute "$1" 'arch' 1 'package_arch'
@@ -67,56 +73,47 @@ srcyaml_write_section_details() {
[[ $a = any ]] && continue [[ $a = any ]] && continue
for attr in "${multivalued_arch_attrs[@]}"; do for attr in "${multivalued_arch_attrs[@]}"; do
pkgbuild_extract_to_yaml "$1" "${attr}_$a" 1 extract_info "$1" "${attr}_$a" 1
done done
done done
} }
yaml_write_global() { write_pkg_yaml(){
local singlevalued=(pkgver pkgrel epoch url install changelog) #pkgdesc
local multivalued=(arch groups license checkdepends makedepends Yaml=$(write_yaml_header)
depends provides conflicts replaces)
#noextract options backup optdepends
#source validpgpkeys "${known_hash_algos[@]/%/sums}")
Yaml+=$(write_empty_line) Yaml+=$(write_empty_line)
local full=$(get_full_version)
local ver=${full:-0}
pkgbase=${pkgbase:-${pkgname[0]}}
Yaml+=$(write_yaml_map 0 "pkgbase") Yaml+=$(write_yaml_map 0 "pkgbase")
Yaml+=$(write_yaml_map 2 "name" "${pkgbase:-$pkgname}") Yaml+=$(write_yaml_map 2 "pkgname" "${pkgbase}")
${details} && srcyaml_write_section_details '' ${details} && write_details ''
Yaml+=$(write_yaml_map 2 "fullver" "${ver}")
Yaml+=$(write_empty_line) Yaml+=$(write_empty_line)
}
yaml_write_package() { Yaml+=$(write_yaml_map 0 "package")
local singlevalued=(url install changelog) #pkgdesc
local multivalued=(arch groups license checkdepends depends
provides conflicts replaces) #options backup optdepends)
Yaml+=$(write_yaml_map 0 "packages")
for pkg in "${pkgname[@]}"; do for pkg in "${pkgname[@]}"; do
Yaml+=$(write_yaml_seq_map 2 "pkgname" "$pkg") Yaml+=$(write_yaml_seq_map 2 "pkgname" "$pkg")
${details} && srcyaml_write_section_details "$pkg" ${details} && write_details "$pkg"
done done
Yaml+=$(write_empty_line)
}
yaml_write_fileinfo(){
local version=$(get_full_version)
pkgbase=${pkgbase:-$pkgname}
Yaml+=$(write_yaml_map 0 "version" "${version:-0}")
Yaml+=$(write_empty_line) Yaml+=$(write_empty_line)
local pkgfile=$(print_all_package_names) local pkgfile=$(print_all_package_names)
Yaml+=$(write_yaml_map 0 "files")
Yaml+=$(write_yaml_map 0 "pkgfile")
for f in ${pkgfile[@]};do for f in ${pkgfile[@]};do
Yaml+=$(write_yaml_seq 2 "${f##*/}") Yaml+=$(write_yaml_seq 2 "${f##*/}")
done done
Yaml+=$(write_empty_line)
}
write_srcyaml(){ Yaml+=$(write_empty_line)
Yaml=$(write_yaml_header)
yaml_write_global
yaml_write_package
yaml_write_fileinfo
printf '%s' "${Yaml}" printf '%s' "${Yaml}"
} }
@@ -142,13 +139,11 @@ done
shift $(( $OPTIND - 1 )) shift $(( $OPTIND - 1 ))
srcpath=$(readlink -f "$1") [[ -f "$1"/PKGBUILD ]] || die "%s/PKGBUILD does not exist!" "$1"
PACKAGE="$1"/PKGBUILD; shift
[[ -f "$srcpath"/PKGBUILD ]] || die "%s/PKGBUILD does not exist!" "$srcpath"
PACKAGE="$srcpath"/PKGBUILD; shift
. "$PACKAGE" . "$PACKAGE"
load_makepkg_config load_makepkg_config
write_srcyaml write_pkg_yaml

View File

@@ -9,28 +9,32 @@
# TREE_DIR_ARTIX=${WORKSPACE_DIR}/artixlinux # TREE_DIR_ARTIX=${WORKSPACE_DIR}/artixlinux
# customize buildtree; uncomment to include # customize buildtree, packages and community should be enabled
# TREE_NAMES_ARTIX=( # TREE_NAMES_ARTIX=(
# packages
# community
# packages-kernel # packages-kernel
# packages-net
# packages-gfx
# packages-openrc # packages-openrc
# packages-runit # packages-runit
# packages-s6 # packages-s6
# packages-media
# packages-xorg
# packages-python # packages-python
# packages-perl # packages-perl
# packages-java # packages-java
# packages-qt5
# packages-devel
# packages-ruby # packages-ruby
# packages-kf5 # packages-gtk
# packages-plasma
# packages-kde
# packages-gnome # packages-gnome
# packages-cinnamon # packages-cinnamon
# packages-lxqt # packages-lxqt
# packages-mate # packages-mate
# packages-kde
# packages-xfce # packages-xfce
# packages-wm # packages-wm
# packages-devel
# packages-lib32
# packages-qt6
# ) # )
# HOST_TREE_ARCH=git://git.archlinux.org/svntogit # HOST_TREE_ARCH=git://git.archlinux.org/svntogit

View File

@@ -0,0 +1,11 @@
[Trigger]
Operation = Install
Operation = Upgrade
Type = Package
Target = *
[Action]
Description = Cleaning up package cache...
Depends = coreutils
When = PostTransaction
Exec = /usr/bin/find /var/cache/pacman/pkg/ -type f -delete

View File

@@ -97,3 +97,25 @@ Include = /etc/pacman.d/mirrorlist
#[custom] #[custom]
#SigLevel = Optional TrustAll #SigLevel = Optional TrustAll
#Server = file:///home/custompkgs #Server = file:///home/custompkgs
#
# ARCHLINUX
#
#[testing]
#Include = /etc/pacman.d/mirrorlist-arch
[extra]
Include = /etc/pacman.d/mirrorlist-arch
#[community-testing]
#Include = /etc/pacman.d/mirrorlist-arch
[community]
Include = /etc/pacman.d/mirrorlist-arch
#[multilib-testing]
#Include = /etc/pacman.d/mirrorlist-arch
#[multilib]
#Include = /etc/pacman.d/mirrorlist-arch

View File

@@ -109,3 +109,37 @@ Include = /etc/pacman.d/mirrorlist
#[custom] #[custom]
#SigLevel = Optional TrustAll #SigLevel = Optional TrustAll
#Server = file:///home/custompkgs #Server = file:///home/custompkgs
#
# ARCHLINUX
#
[gnome-unstable]
Include = /etc/pacman.d/mirrorlist-arch
[staging]
Include = /etc/pacman.d/mirrorlist-arch
[testing]
Include = /etc/pacman.d/mirrorlist-arch
[extra]
Include = /etc/pacman.d/mirrorlist-arch
[community-staging]
Include = /etc/pacman.d/mirrorlist-arch
[community-testing]
Include = /etc/pacman.d/mirrorlist-arch
[community]
Include = /etc/pacman.d/mirrorlist-arch
#[multilib-staging]
#Include = /etc/pacman.d/mirrorlist-arch
#[multilib-testing]
#Include = /etc/pacman.d/mirrorlist-arch
#[multilib]
#Include = /etc/pacman.d/mirrorlist-arch

View File

@@ -106,3 +106,34 @@ Include = /etc/pacman.d/mirrorlist
#[custom] #[custom]
#SigLevel = Optional TrustAll #SigLevel = Optional TrustAll
#Server = file:///home/custompkgs #Server = file:///home/custompkgs
#
# ARCHLINUX
#
[staging]
Include = /etc/pacman.d/mirrorlist-arch
[testing]
Include = /etc/pacman.d/mirrorlist-arch
[extra]
Include = /etc/pacman.d/mirrorlist-arch
[community-staging]
Include = /etc/pacman.d/mirrorlist-arch
[community-testing]
Include = /etc/pacman.d/mirrorlist-arch
[community]
Include = /etc/pacman.d/mirrorlist-arch
#[multilib-staging]
#Include = /etc/pacman.d/mirrorlist-arch
#[multilib-testing]
#Include = /etc/pacman.d/mirrorlist-arch
#[multilib]
#Include = /etc/pacman.d/mirrorlist-arch

View File

@@ -97,3 +97,25 @@ Include = /etc/pacman.d/mirrorlist
#[custom] #[custom]
#SigLevel = Optional TrustAll #SigLevel = Optional TrustAll
#Server = file:///home/custompkgs #Server = file:///home/custompkgs
#
# ARCHLINUX
#
[testing]
Include = /etc/pacman.d/mirrorlist-arch
[extra]
Include = /etc/pacman.d/mirrorlist-arch
[community-testing]
Include = /etc/pacman.d/mirrorlist-arch
[community]
Include = /etc/pacman.d/mirrorlist-arch
#[multilib-testing]
#Include = /etc/pacman.d/mirrorlist-arch
#[multilib]
#Include = /etc/pacman.d/mirrorlist-arch

View File

@@ -109,3 +109,37 @@ Include = /etc/pacman.d/mirrorlist
#[custom] #[custom]
#SigLevel = Optional TrustAll #SigLevel = Optional TrustAll
#Server = file:///home/custompkgs #Server = file:///home/custompkgs
#
# ARCHLINUX
#
[kde-unstable]
Include = /etc/pacman.d/mirrorlist-arch
[staging]
Include = /etc/pacman.d/mirrorlist-arch
[testing]
Include = /etc/pacman.d/mirrorlist-arch
[extra]
Include = /etc/pacman.d/mirrorlist-arch
[community-staging]
Include = /etc/pacman.d/mirrorlist-arch
[community-testing]
Include = /etc/pacman.d/mirrorlist-arch
[community]
Include = /etc/pacman.d/mirrorlist-arch
#[multilib-staging]
#Include = /etc/pacman.d/mirrorlist-arch
#[multilib-testing]
#Include = /etc/pacman.d/mirrorlist-arch
#[multilib]
#Include = /etc/pacman.d/mirrorlist-arch

View File

@@ -106,3 +106,34 @@ Include = /etc/pacman.d/mirrorlist
#[custom] #[custom]
#SigLevel = Optional TrustAll #SigLevel = Optional TrustAll
#Server = file:///home/custompkgs #Server = file:///home/custompkgs
#
# ARCHLINUX
#
[staging]
Include = /etc/pacman.d/mirrorlist-arch
[testing]
Include = /etc/pacman.d/mirrorlist-arch
[extra]
Include = /etc/pacman.d/mirrorlist-arch
[community-staging]
Include = /etc/pacman.d/mirrorlist-arch
[community-testing]
Include = /etc/pacman.d/mirrorlist-arch
[community]
Include = /etc/pacman.d/mirrorlist-arch
[multilib-staging]
Include = /etc/pacman.d/mirrorlist-arch
[multilib-testing]
Include = /etc/pacman.d/mirrorlist-arch
[multilib]
Include = /etc/pacman.d/mirrorlist-arch

View File

@@ -97,3 +97,25 @@ Include = /etc/pacman.d/mirrorlist
#[custom] #[custom]
#SigLevel = Optional TrustAll #SigLevel = Optional TrustAll
#Server = file:///home/custompkgs #Server = file:///home/custompkgs
#
# ARCHLINUX
#
[testing]
Include = /etc/pacman.d/mirrorlist-arch
[extra]
Include = /etc/pacman.d/mirrorlist-arch
[community-testing]
Include = /etc/pacman.d/mirrorlist-arch
[community]
Include = /etc/pacman.d/mirrorlist-arch
[multilib-testing]
Include = /etc/pacman.d/mirrorlist-arch
[multilib]
Include = /etc/pacman.d/mirrorlist-arch

View File

@@ -97,3 +97,25 @@ Include = /etc/pacman.d/mirrorlist
#[custom] #[custom]
#SigLevel = Optional TrustAll #SigLevel = Optional TrustAll
#Server = file:///home/custompkgs #Server = file:///home/custompkgs
#
# ARCHLINUX
#
#[testing]
#Include = /etc/pacman.d/mirrorlist-arch
[extra]
Include = /etc/pacman.d/mirrorlist-arch
#[community-testing]
#Include = /etc/pacman.d/mirrorlist-arch
[community]
Include = /etc/pacman.d/mirrorlist-arch
#[multilib-testing]
#Include = /etc/pacman.d/mirrorlist-arch
[multilib]
Include = /etc/pacman.d/mirrorlist-arch

View File

@@ -1,40 +0,0 @@
valid_names=(
core
extra
community
multilib
testing
community-testing
multilib-testing
staging
community-staging
multilib-staging
rebuild
gnome-unstable
kde-unstable
)
stable=(
${valid_names[0]}
${valid_names[1]}
${valid_names[2]}
${valid_names[3]}
)
gremlins=(
${valid_names[4]}
${valid_names[5]}
${valid_names[6]}
)
goblins=(
${valid_names[7]}
${valid_names[8]}
${valid_names[9]}
${valid_names[10]}
)
unstable=(
${valid_names[11]}
${valid_names[12]}
)

View File

@@ -34,15 +34,16 @@ add_svc_runit(){
} }
add_svc_s6(){ add_svc_s6(){
local mnt="$1" names="$2" rlvl="${3:-default}" local mnt="$1" names="$2" valid="" rlvl="${3:-default}"
for svc in $names; do for svc in $names; do
error=false error=false
chroot $mnt s6-rc-db -c /etc/s6/rc/compiled type $svc &> /dev/null || error=true chroot $mnt s6-rc-db -c /etc/s6/rc/compiled type $svc &> /dev/null || error=true
if [ $? == 0 ] && [[ $error == false ]]; then if [ $? == 0 ] && [[ $error == false ]]; then
msg2 "Setting %s ..." "$svc" msg2 "Setting %s ..." "$svc"
chroot $mnt s6-rc-bundle-update -c /etc/s6/rc/compiled add $rlvl $svc valid=${valid:-}${valid:+' '}${svc}
fi fi
done done
chroot $mnt s6-rc-bundle -c /etc/s6/rc/compiled add $rlvl $valid
# rebuild s6-linux-init binaries # rebuild s6-linux-init binaries
chroot $mnt rm -r /etc/s6/current chroot $mnt rm -r /etc/s6/current

View File

@@ -15,8 +15,9 @@
prepare_boot_extras(){ prepare_boot_extras(){
local src="$1" dest=${iso_root}/boot local src="$1" dest=${iso_root}/boot
for fw in intel amd; do for u in intel amd;do
cp $src/boot/$fw-ucode.img $dest/$fw-ucode.img cp $src/boot/$u-ucode.img $dest/$u-ucode.img
cp $src/usr/share/licenses/$u-ucode/LICENSE $dest/$u-ucode.LICENSE
done done
cp $src/boot/memtest86+/memtest.bin $dest/memtest cp $src/boot/memtest86+/memtest.bin $dest/memtest

View File

@@ -103,3 +103,83 @@ config_tree(){
fi fi
cd .. cd ..
} }
# write_gitignore() {
# local pkg="$1"
# local gitignore=$pkg/.gitignore
# echo '# ---> ArchLinuxPackages' > $gitignore
# echo '*.tar' >> $gitignore
# echo '*.tar.*' >> $gitignore
# echo '*.jar' >> $gitignore
# echo '*.exe' >> $gitignore
# echo '*.msi' >> $gitignore
# echo '*.zip' >> $gitignore
# echo '*.tgz' >> $gitignore
# echo '*.log' >> $gitignore
# echo '*.log.*' >> $gitignore
# echo '*.sig' >> $gitignore
# echo '' >> $gitignore
# echo 'pkg/' >> $gitignore
# echo 'src/' >> $gitignore
# echo '' >> $gitignore
# echo '# ---> Archives' >> $gitignore
# echo '*.7z' >> $gitignore
# echo '*.rar' >> $gitignore
# echo '*.gz' >> $gitignore
# echo '*.bzip' >> $gitignore
# echo '*.bz2' >> $gitignore
# echo '*.xz' >> $gitignore
# echo '*.lzma' >> $gitignore
# echo '*.cab' >> $gitignore
# echo '' >> $gitignore
# echo '# ---> systemd' >> $gitignore
# echo '*.service' >> $gitignore
# echo '*.socket' >> $gitignore
# echo '*.timer' >> $gitignore
# echo '' >> $gitignore
# echo '# ---> snap' >> $gitignore
# echo '*.snap' >> $gitignore
# echo '' >> $gitignore
#
# git add $gitignore
# }
#
# write_readme(){
# local pkg="$1"
# local readme=$pkg/README.md
#
# echo "# $pkg" > $readme
# echo '' >> $readme
#
# git add $readme
# }
#
# subrepo_new2(){
# local group="${1:-$GROUP}" team="${2:-$TEAM}"
# local dest=${TREE_DIR_ARTIX}/$group/${PACKAGE}/trunk
#
# cd ${TREE_DIR_ARTIX}/$group
#
# local org=$(get_pkg_org "${PACKAGE}")
#
# prepare_dir "$dest"
#
# subrepo_init "${PACKAGE}" "$org"
#
# commit_jenkins_files2 "${PACKAGE}"
#
# subrepo_push "${PACKAGE}"
#
# add_repo_to_team "${PACKAGE}" "$org" "$team"
# }
#
# commit_jenkins_files2(){
# local pkg="$1"
#
# write_jenkinsfile "$pkg"
# write_agentyaml "$pkg"
# write_readme "$pkg"
# write_gitignore "$pkg"
#
# git commit -m "initial commit"
# }

View File

@@ -17,29 +17,25 @@ shopt -s extglob
get_compliant_name(){ get_compliant_name(){
local gitname="$1" local gitname="$1"
case "$gitname" in case "$gitname" in
*+) gitname=${gitname//+/plus} ;; *+) gitname=${gitname//+/plus}
*+*) gitname=${gitname//+/-} ;;
esac esac
echo "$gitname" echo "$gitname"
} }
set_arch_repos(){ set_arch_repos(){
local x="$1" y="$2" z="$3" local x="$1" y="$2" z="$3"
. "${DATADIR}"/valid-names.conf ARCH_REPOS=(core extra community multilib)
ARCH_REPOS=(${stable[@]}) $x && ARCH_REPOS+=(testing community-testing multilib-testing)
$y && ARCH_REPOS+=(staging community-staging multilib-staging)
$x && ARCH_REPOS+=(${gremlins[@]}) $z && ARCH_REPOS+=(gnome-unstable kde-unstable)
$y && ARCH_REPOS+=(${goblins[@]})
$z && ARCH_REPOS+=(${unstable[@]})
} }
find_repo(){ find_repo(){
local pkg="$1" repo= pkgarch="${2:-${CARCH}}" local pkg="$1" repo=
for r in ${ARCH_REPOS[@]};do for r in ${ARCH_REPOS[@]};do
[[ -f $pkg/repos/$r-$pkgarch/PKGBUILD ]] && repo=repos/"$r-$pkgarch" [[ -f $pkg/repos/$r-${ARCH}/PKGBUILD ]] && repo=$r-${ARCH}
[[ -f $pkg/repos/$r-any/PKGBUILD ]] && repo=repos/"$r"-any [[ -f $pkg/repos/$r-any/PKGBUILD ]] && repo=$r-any
[[ -f $pkg/$pkgarch/$r/PKGBUILD ]] && repo="$pkgarch/$r"
done done
echo $repo echo $repo
} }

View File

@@ -36,37 +36,39 @@ load_pkg_config(){
TREE_DIR_ARTIX=${TREE_DIR_ARTIX:-"${WORKSPACE_DIR}/artixlinux"} TREE_DIR_ARTIX=${TREE_DIR_ARTIX:-"${WORKSPACE_DIR}/artixlinux"}
ARTIX_TREE=(
packages community
packages-{gfx,gtk,media,net,qt5,xorg}
)
local dev_tree=(packages-{python,perl,java,ruby})
local init_tree=(packages-{openrc,runit,s6})
local desktop_tree=(
packages-{kf5,plasma,kde,qt6}
packages-{lxqt,gnome,cinnamon,mate,xfce,wm}
)
[[ -z ${TREE_NAMES_ARTIX[@]} ]] && \ [[ -z ${TREE_NAMES_ARTIX[@]} ]] && \
TREE_NAMES_ARTIX=( TREE_NAMES_ARTIX=(
packages-kernel packages
"${init_tree[@]}" community
"${dev_tree[@]}" packages-kernel
"${desktop_tree[@]}" packages-net
packages-devel packages-gfx
packages-lib32 packages-openrc
packages-runit
packages-s6
packages-xorg
packages-python
packages-perl
packages-java
packages-qt5
packages-devel
packages-ruby
packages-gtk
packages-gnome
packages-cinnamon
packages-lxqt
packages-mate
packages-kde
packages-xfce
packages-wm
# packages-haskell
) )
ARTIX_TREE+=("${TREE_NAMES_ARTIX[@]}")
HOST_TREE_ARTIX=${HOST_TREE_ARTIX:-"gitea@${GIT_DOMAIN}:artixlinux"} HOST_TREE_ARTIX=${HOST_TREE_ARTIX:-"gitea@${GIT_DOMAIN}:artixlinux"}
TREE_DIR_ARCH=${TREE_DIR_ARCH:-"${WORKSPACE_DIR}/archlinux"} TREE_DIR_ARCH=${TREE_DIR_ARCH:-"${WORKSPACE_DIR}/archlinux"}
ARCH_TREE=(packages community) TREE_NAMES_ARCH=(packages community)
HOST_TREE_ARCH=${HOST_TREE_ARCH:-'git://git.archlinux.org/svntogit'} HOST_TREE_ARCH=${HOST_TREE_ARCH:-'git://git.archlinux.org/svntogit'}