Support all build parameters in build images

This commit is contained in:
Cory Sanin 2025-01-14 19:16:50 -05:00
parent c8d0cb2fe1
commit ddbe2d042e
9 changed files with 211 additions and 20 deletions

View File

@ -1,7 +1,7 @@
FROM archlinux/archlinux:base-devel
COPY scripts/entrypoint.sh /scripts/entrypoint.sh
COPY scripts/testing.arch.sh /scripts/testing.sh
COPY scripts/pacman.conf.arch/* /scripts/pacman.conf/
ARG MIRROR=https://mirror.sanin.dev/arch-linux/\$repo/os/\$arch

View File

@ -1,7 +1,7 @@
FROM artixlinux/artixlinux:base-devel
COPY scripts/entrypoint.sh /scripts/entrypoint.sh
COPY scripts/testing.artix.sh /scripts/testing.sh
COPY scripts/pacman.conf.artix/* /scripts/pacman.conf/
ARG MIRROR=https://mirror.sanin.dev/artix-linux/\$repo/os/\$arch

View File

@ -1,11 +1,9 @@
#!/bin/sh
if [ -n "$DEP" ]
if [ -n "$DEP" ] && [ "$DEP" != "stable" ]
then
if [ "$DEP" = "testing" ]
then
/scripts/testing.sh
fi
sudo cp "/scripts/pacman.conf/pacman.$DEP.conf" "/etc/pacman.conf" && \
sudo pacman -Syu --noconfirm --noprogressbar
fi
if [ -z "$REPO" ]
@ -14,9 +12,33 @@ then
exit $?;
fi
checkoutCommit() {
if [ -n "$COMMIT" ]
then
git checkout "$COMMIT"
fi
}
applyPatch() {
if [ -n "$PATCH" ]
then
printf "$PATCH" > ../build.patch && \
patch --strip=1 --input=../build.patch
fi
}
changeDir() {
if [ -n "$CD" ]
then
cd "$CD"
fi
}
# Clone the git repo
git clone "$REPO" /home/user/pkg && \
cd /home/user/pkg && \
checkoutCommit && \
applyPatch && \
sudo pacman -Syu --noconfirm --noprogressbar &&\
makepkg -smf --noconfirm --noprogressbar --skippgpcheck --noarchive
exit $?;

View File

@ -0,0 +1,45 @@
#
# /etc/pacman.conf
#
[options]
HoldPkg = pacman glibc
Architecture = auto
NoProgressBar
VerbosePkgLists
ParallelDownloads = 5
DownloadUser = alpm
SigLevel = Required DatabaseOptional
LocalFileSigLevel = Optional
[core-staging]
Include = /etc/pacman.d/mirrorlist
[core-testing]
Include = /etc/pacman.d/mirrorlist
[core]
Include = /etc/pacman.d/mirrorlist
[extra-staging]
Include = /etc/pacman.d/mirrorlist
[extra-testing]
Include = /etc/pacman.d/mirrorlist
[extra]
Include = /etc/pacman.d/mirrorlist
[options]
NoExtract = usr/share/help/* !usr/share/help/en* !usr/share/help/C/*
NoExtract = usr/share/gtk-doc/html/* usr/share/doc/*
NoExtract = usr/share/locale/* usr/share/X11/locale/* usr/share/i18n/*
NoExtract = !*locale*/en*/* !usr/share/i18n/charmaps/UTF-8.gz !usr/share/*locale*/locale.*
NoExtract = !usr/share/*locales/en_?? !usr/share/*locales/i18n* !usr/share/*locales/iso*
NoExtract = !usr/share/*locales/trans*
NoExtract = !usr/share/X11/locale/C/*
NoExtract = !usr/share/X11/locale/compose.dir !usr/share/X11/locale/iso8859-1/*
NoExtract = !usr/share/*locales/C !usr/share/*locales/POSIX !usr/share/i18n/charmaps/ANSI_X3.4-1968.gz
NoExtract = usr/share/man/* usr/share/info/*
NoExtract = usr/share/vim/vim*/lang/*
NoExtract = etc/pacman.conf etc/pacman.d/mirrorlist

View File

@ -0,0 +1,40 @@
#
# /etc/pacman.conf
#
[options]
HoldPkg = pacman glibc
Architecture = auto
NoProgressBar
VerbosePkgLists
ParallelDownloads = 5
DownloadUser = alpm
SigLevel = Required DatabaseOptional
LocalFileSigLevel = Optional
[core-testing]
Include = /etc/pacman.d/mirrorlist
[core]
Include = /etc/pacman.d/mirrorlist
[extra-testing]
Include = /etc/pacman.d/mirrorlist
[extra]
Include = /etc/pacman.d/mirrorlist
[options]
NoExtract = usr/share/help/* !usr/share/help/en* !usr/share/help/C/*
NoExtract = usr/share/gtk-doc/html/* usr/share/doc/*
NoExtract = usr/share/locale/* usr/share/X11/locale/* usr/share/i18n/*
NoExtract = !*locale*/en*/* !usr/share/i18n/charmaps/UTF-8.gz !usr/share/*locale*/locale.*
NoExtract = !usr/share/*locales/en_?? !usr/share/*locales/i18n* !usr/share/*locales/iso*
NoExtract = !usr/share/*locales/trans*
NoExtract = !usr/share/X11/locale/C/*
NoExtract = !usr/share/X11/locale/compose.dir !usr/share/X11/locale/iso8859-1/*
NoExtract = !usr/share/*locales/C !usr/share/*locales/POSIX !usr/share/i18n/charmaps/ANSI_X3.4-1968.gz
NoExtract = usr/share/man/* usr/share/info/*
NoExtract = usr/share/vim/vim*/lang/*
NoExtract = etc/pacman.conf etc/pacman.d/mirrorlist

View File

@ -0,0 +1,53 @@
#
# /etc/pacman.conf
#
[options]
HoldPkg = pacman glibc
Architecture = auto
NoProgressBar
VerbosePkgLists
ParallelDownloads = 5
DownloadUser = alpm
SigLevel = Required DatabaseOptional
LocalFileSigLevel = Optional
[system-goblins]
Include = /etc/pacman.d/mirrorlist
[system-gremlins]
Include = /etc/pacman.d/mirrorlist
[system]
Include = /etc/pacman.d/mirrorlist
[world-goblins]
Include = /etc/pacman.d/mirrorlist
[world-gremlins]
Include = /etc/pacman.d/mirrorlist
[world]
Include = /etc/pacman.d/mirrorlist
[galaxy-goblins]
Include = /etc/pacman.d/mirrorlist
[galaxy-gremlins]
Include = /etc/pacman.d/mirrorlist
[galaxy]
Include = /etc/pacman.d/mirrorlist
[options]
NoExtract = usr/share/help/* !usr/share/help/en* !usr/share/help/C/*
NoExtract = usr/share/gtk-doc/html/* usr/share/doc/*
NoExtract = usr/share/locale/* usr/share/X11/locale/* usr/share/i18n/*
NoExtract = !*locale*/en*/* !usr/share/i18n/charmaps/UTF-8.gz !usr/share/*locale*/locale.*
NoExtract = !usr/share/*locales/en_?? !usr/share/*locales/i18n* !usr/share/*locales/iso*
NoExtract = !usr/share/*locales/trans*
NoExtract = !usr/share/X11/locale/C/*
NoExtract = !usr/share/X11/locale/compose.dir !usr/share/X11/locale/iso8859-1/*
NoExtract = !usr/share/*locales/C !usr/share/*locales/POSIX !usr/share/i18n/charmaps/ANSI_X3.4-1968.gz
NoExtract = usr/share/man/* usr/share/info/*
NoExtract = usr/share/vim/vim*/lang/*

View File

@ -0,0 +1,44 @@
#
# /etc/pacman.conf
#
[options]
HoldPkg = pacman glibc
Architecture = auto
NoProgressBar
VerbosePkgLists
ParallelDownloads = 5
DownloadUser = alpm
SigLevel = Required DatabaseOptional
LocalFileSigLevel = Optional
[system-gremlins]
Include = /etc/pacman.d/mirrorlist
[system]
Include = /etc/pacman.d/mirrorlist
[world-gremlins]
Include = /etc/pacman.d/mirrorlist
[world]
Include = /etc/pacman.d/mirrorlist
[galaxy-gremlins]
Include = /etc/pacman.d/mirrorlist
[galaxy]
Include = /etc/pacman.d/mirrorlist
[options]
NoExtract = usr/share/help/* !usr/share/help/en* !usr/share/help/C/*
NoExtract = usr/share/gtk-doc/html/* usr/share/doc/*
NoExtract = usr/share/locale/* usr/share/X11/locale/* usr/share/i18n/*
NoExtract = !*locale*/en*/* !usr/share/i18n/charmaps/UTF-8.gz !usr/share/*locale*/locale.*
NoExtract = !usr/share/*locales/en_?? !usr/share/*locales/i18n* !usr/share/*locales/iso*
NoExtract = !usr/share/*locales/trans*
NoExtract = !usr/share/X11/locale/C/*
NoExtract = !usr/share/X11/locale/compose.dir !usr/share/X11/locale/iso8859-1/*
NoExtract = !usr/share/*locales/C !usr/share/*locales/POSIX !usr/share/i18n/charmaps/ANSI_X3.4-1968.gz
NoExtract = usr/share/man/* usr/share/info/*
NoExtract = usr/share/vim/vim*/lang/*

View File

@ -1,13 +0,0 @@
#!/bin/bash
# Enable the [core-testing] repository by uncommenting the relevant lines in the configuration file
sudo sed -i 's/^#\[core-testing\]/\[core-testing\]/' /etc/pacman.conf
# Enable the [extra-testing] repository by uncommenting the relevant lines in the configuration file
sudo sed -i 's/^#\[extra-testing\]/\[extra-testing\]/' /etc/pacman.conf
# Uncomment the 'Include = /etc/pacman.d/mirrorlist' line in the configuration file if necessary
sudo sed -i '/testing\]/{n;s/^#//}' /etc/pacman.conf
# Update the package list and upgrade the system
sudo pacman -Syu