Allow ISOs to be build against the edge mirror/package repository
This commit is contained in:
1 parent
e5152cd7b2
commit
a202c81a0c
4 files changed
+48
-3
No files matched your search
@@ -23,9 +23,13 @@ while [[ $# -gt 0 ]]; do
|
||||
OMARCHY_INSTALLER_REF=dev
|
||||
shift
|
||||
;;
|
||||
--edge)
|
||||
OMARCHY_MIRROR=edge
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
echo "Unknown option: $1"
|
||||
echo "Usage: $0 [--no-cache] [--no-boot-offer] [--local-source] [--dev]"
|
||||
echo "Usage: $0 [--no-cache] [--no-boot-offer] [--local-source] [--dev] [--edge]"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
@@ -42,12 +46,14 @@ mkdir -p "$BUILD_RELEASE_PATH"
|
||||
|
||||
OMARCHY_INSTALLER_REPO="${OMARCHY_INSTALLER_REPO:-basecamp/omarchy}"
|
||||
OMARCHY_INSTALLER_REF="${OMARCHY_INSTALLER_REF:-master}"
|
||||
OMARCHY_MIRROR="${OMARCHY_MIRROR:-stable}"
|
||||
|
||||
DOCKER_ARGS=(
|
||||
--rm
|
||||
--privileged
|
||||
-e "OMARCHY_INSTALLER_REPO=$OMARCHY_INSTALLER_REPO"
|
||||
-e "OMARCHY_INSTALLER_REF=$OMARCHY_INSTALLER_REF"
|
||||
-e "OMARCHY_MIRROR=$OMARCHY_MIRROR"
|
||||
-e "HOST_UID=$(id -u)"
|
||||
-e "HOST_GID=$(id -g)"
|
||||
-v "$BUILD_RELEASE_PATH/:/out/"
|
||||
|
||||
+10
-2
@@ -9,7 +9,11 @@ pacman --noconfirm -Sy archiso git sudo base-devel jq grub
|
||||
|
||||
# Install omarchy-keyring for package verification during build
|
||||
# The [omarchy] repo is defined in /configs/pacman-online.conf with SigLevel = Optional TrustAll
|
||||
pacman --config /configs/pacman-online.conf --noconfirm -Sy omarchy-keyring
|
||||
if [[ $OMARCHY_MIRROR == "edge" ]]; then
|
||||
pacman --config /configs/pacman-online-edge.conf --noconfirm -Sy omarchy-keyring
|
||||
else
|
||||
pacman --config /configs/pacman-online-stable.conf --noconfirm -Sy omarchy-keyring
|
||||
fi
|
||||
pacman-key --populate omarchy
|
||||
|
||||
# Setup build locations
|
||||
@@ -78,7 +82,11 @@ all_packages+=($(grep -v '^#' /builder/archinstall.packages | grep -v '^$'))
|
||||
|
||||
# Download all the packages to the offline mirror inside the ISO
|
||||
mkdir -p /tmp/offlinedb
|
||||
pacman --config /configs/pacman-online.conf --noconfirm -Syw "${all_packages[@]}" --cachedir $offline_mirror_dir/ --dbpath /tmp/offlinedb
|
||||
if [[ $OMARCHY_MIRROR == "edge" ]]; then
|
||||
pacman --config /configs/pacman-online-edge.conf --noconfirm -Syw "${all_packages[@]}" --cachedir $offline_mirror_dir/ --dbpath /tmp/offlinedb
|
||||
else
|
||||
pacman --config /configs/pacman-online-stable.conf --noconfirm -Syw "${all_packages[@]}" --cachedir $offline_mirror_dir/ --dbpath /tmp/offlinedb
|
||||
fi
|
||||
repo-add --new "$offline_mirror_dir/offline.db.tar.gz" "$offline_mirror_dir/"*.pkg.tar.zst
|
||||
|
||||
# Create a symlink to the offline mirror instead of duplicating it.
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
#
|
||||
# /etc/pacman.conf
|
||||
#
|
||||
# See the pacman.conf(5) manpage for option and repository directives
|
||||
|
||||
[options]
|
||||
HoldPkg = pacman glibc
|
||||
Architecture = auto
|
||||
ParallelDownloads = 5
|
||||
|
||||
# By default, pacman accepts packages signed by keys that its local keyring
|
||||
# trusts (see pacman-key and its man page), as well as unsigned packages.
|
||||
SigLevel = Required DatabaseOptional
|
||||
LocalFileSigLevel = Optional
|
||||
|
||||
[core]
|
||||
Server = https://mirror.omarchy.org/$repo/os/$arch
|
||||
|
||||
[extra]
|
||||
Server = https://mirror.omarchy.org/$repo/os/$arch
|
||||
|
||||
[multilib]
|
||||
Server = https://mirror.omarchy.org/$repo/os/$arch
|
||||
|
||||
[omarchy]
|
||||
SigLevel = Optional TrustAll
|
||||
Server = https://pkgs.omarchy.org/edge/$arch
|
||||
|
||||
[arch-mact2]
|
||||
Server = https://github.com/NoaHimesaka1873/arch-mact2-mirror/releases/download/release
|
||||
SigLevel = Never
|
||||
File renamed without changes.
Reference in new issue
Block a user