mirror of
https://codeberg.org/privacy1st/arch
synced 2024-12-23 01:16:04 +01:00
updates and build process changes
build process: - never run "pacman -Sy" as pacman does not support partial upgrades, instead use "pacman -Syu" - after each build-stage: run "docker build" with cache disabled to make sure the build step "pacman -Syu" is run
This commit is contained in:
parent
9d16934bca
commit
85163477df
1
.idea/vcs.xml
generated
1
.idea/vcs.xml
generated
@ -13,6 +13,7 @@
|
|||||||
<mapping directory="$PROJECT_DIR$/pkg/chromaprint-fftw" vcs="Git" />
|
<mapping directory="$PROJECT_DIR$/pkg/chromaprint-fftw" vcs="Git" />
|
||||||
<mapping directory="$PROJECT_DIR$/pkg/crema" vcs="Git" />
|
<mapping directory="$PROJECT_DIR$/pkg/crema" vcs="Git" />
|
||||||
<mapping directory="$PROJECT_DIR$/pkg/davs2" vcs="Git" />
|
<mapping directory="$PROJECT_DIR$/pkg/davs2" vcs="Git" />
|
||||||
|
<mapping directory="$PROJECT_DIR$/pkg/de-p1st-image-width-limit" vcs="Git" />
|
||||||
<mapping directory="$PROJECT_DIR$/pkg/decklink-sdk" vcs="Git" />
|
<mapping directory="$PROJECT_DIR$/pkg/decklink-sdk" vcs="Git" />
|
||||||
<mapping directory="$PROJECT_DIR$/pkg/discord_arch_electron" vcs="Git" />
|
<mapping directory="$PROJECT_DIR$/pkg/discord_arch_electron" vcs="Git" />
|
||||||
<mapping directory="$PROJECT_DIR$/pkg/fedora-firefox-wayland-bin" vcs="Git" />
|
<mapping directory="$PROJECT_DIR$/pkg/fedora-firefox-wayland-bin" vcs="Git" />
|
||||||
|
@ -23,8 +23,8 @@ RUN printf '\n[options]\nDisableDownloadTimeout\n' >> /etc/pacman.conf && \
|
|||||||
printf '\n[multilib]\nInclude = /etc/pacman.d/mirrorlist\n' >> /etc/pacman.conf && \
|
printf '\n[multilib]\nInclude = /etc/pacman.d/mirrorlist\n' >> /etc/pacman.conf && \
|
||||||
\
|
\
|
||||||
pacman -Syu --noconfirm && \
|
pacman -Syu --noconfirm && \
|
||||||
pacman -S --needed --noconfirm svn && \
|
pacman -S --needed --noconfirm svn \
|
||||||
pacman -S --needed --noconfirm multilib-devel
|
multilib-devel
|
||||||
|
|
||||||
# 1. Set packager
|
# 1. Set packager
|
||||||
# 2. Store built packages in /out/
|
# 2. Store built packages in /out/
|
||||||
|
@ -27,7 +27,8 @@ function start-docker() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function update-build-image() {
|
function update-build-image() {
|
||||||
sudo docker-compose build --pull
|
# "--no-cache" to always run the "pacman -Syu" build step
|
||||||
|
sudo docker-compose build --pull --no-cache
|
||||||
}
|
}
|
||||||
|
|
||||||
function build-pkg() {
|
function build-pkg() {
|
||||||
@ -91,9 +92,6 @@ before continuing with the next line.";
|
|||||||
is-installed "docker-compose" || return $?
|
is-installed "docker-compose" || return $?
|
||||||
}
|
}
|
||||||
|
|
||||||
update-build-image || return $?
|
|
||||||
|
|
||||||
|
|
||||||
# Read content of PKGLIST file to an array
|
# Read content of PKGLIST file to an array
|
||||||
# For each line: build and push all space separated packages
|
# For each line: build and push all space separated packages
|
||||||
mapfile -t STAGES < "${PKGLIST}"
|
mapfile -t STAGES < "${PKGLIST}"
|
||||||
@ -102,6 +100,8 @@ before continuing with the next line.";
|
|||||||
# trim leading/tailing whitespaces
|
# trim leading/tailing whitespaces
|
||||||
line="$(echo "${line}" | xargs)" || return $?
|
line="$(echo "${line}" | xargs)" || return $?
|
||||||
space_separated_to_array line pkgs
|
space_separated_to_array line pkgs
|
||||||
|
# Rebuild the docker image with refreshed mirrors => this fetches packages that were built in a previous build stage
|
||||||
|
update-build-image || return $?
|
||||||
# shellcheck disable=SC2154
|
# shellcheck disable=SC2154
|
||||||
build-and-push "${pkgs[@]}" || exit $?
|
build-and-push "${pkgs[@]}" || exit $?
|
||||||
done
|
done
|
||||||
|
@ -52,8 +52,11 @@ function build-pkg() {
|
|||||||
|
|
||||||
function push-pkg() {
|
function push-pkg() {
|
||||||
arch-repo-push-new || return $? # Push remote repository
|
arch-repo-push-new || return $? # Push remote repository
|
||||||
echo "Running 'pacman -Sy' to update de-p1st mirror database ..."
|
echo "Running 'pacman -Syu' to update de-p1st mirror database ..."
|
||||||
sudo pacman -Sy || return $?
|
|
||||||
|
# Theoretically "-Sy" would be enough to update the mirrors,
|
||||||
|
# but pacman does not support partial updates!
|
||||||
|
sudo pacman -Syu || return $?
|
||||||
}
|
}
|
||||||
|
|
||||||
function build-and-push() {
|
function build-and-push() {
|
||||||
|
@ -9,9 +9,6 @@ function main(){
|
|||||||
# Write-permission for user "build"
|
# Write-permission for user "build"
|
||||||
sudo chown "build:wheel" /out
|
sudo chown "build:wheel" /out
|
||||||
|
|
||||||
# Refresh mirrors, e.g. to fetch packages that were built in the previous build stage
|
|
||||||
sudo pacman -Sy
|
|
||||||
|
|
||||||
PKG=/pkg/"${1}"
|
PKG=/pkg/"${1}"
|
||||||
shift; # remove first arg
|
shift; # remove first arg
|
||||||
echo "Looking for PKGBUILD in ${PKG} ..."
|
echo "Looking for PKGBUILD in ${PKG} ..."
|
||||||
|
2
git-pull
2
git-pull
@ -1,5 +1,5 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
git pull || exit $?
|
git pull || exit $?
|
||||||
git submodule foreach 'git checkout master' || exit $?
|
git submodule foreach 'git checkout master || git checkout main' || exit $?
|
||||||
git submodule foreach 'if git pull | grep '\''^Updating'\''; then printf " %s" "$(basename $sm_path)" >> $toplevel/build-pkg/pkglist.tmp; fi'
|
git submodule foreach 'if git pull | grep '\''^Updating'\''; then printf " %s" "$(basename $sm_path)" >> $toplevel/build-pkg/pkglist.tmp; fi'
|
||||||
|
@ -1 +1 @@
|
|||||||
Subproject commit b7171006c0752af066c64eb520c1c5b3eb62e486
|
Subproject commit 19310af76b80fcdfce8087d0a0961491dac75118
|
@ -1 +1 @@
|
|||||||
Subproject commit af7ac0ec4eda146420677cb68098a43fdbaa2ec0
|
Subproject commit c9aa41fc3a224e6466a96894efa9b4f94e0ac539
|
@ -1 +1 @@
|
|||||||
Subproject commit 9b3b6c0b91ecbdd45aa5ebed89e1345097b42c8b
|
Subproject commit 4e648a8a3b118d4b9903a454615eb7e4d53dcbb9
|
Loading…
Reference in New Issue
Block a user