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
|
OMARCHY_INSTALLER_REF=dev
|
||||||
shift
|
shift
|
||||||
;;
|
;;
|
||||||
|
--edge)
|
||||||
|
OMARCHY_MIRROR=edge
|
||||||
|
shift
|
||||||
|
;;
|
||||||
*)
|
*)
|
||||||
echo "Unknown option: $1"
|
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
|
exit 1
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
@@ -42,12 +46,14 @@ mkdir -p "$BUILD_RELEASE_PATH"
|
|||||||
|
|
||||||
OMARCHY_INSTALLER_REPO="${OMARCHY_INSTALLER_REPO:-basecamp/omarchy}"
|
OMARCHY_INSTALLER_REPO="${OMARCHY_INSTALLER_REPO:-basecamp/omarchy}"
|
||||||
OMARCHY_INSTALLER_REF="${OMARCHY_INSTALLER_REF:-master}"
|
OMARCHY_INSTALLER_REF="${OMARCHY_INSTALLER_REF:-master}"
|
||||||
|
OMARCHY_MIRROR="${OMARCHY_MIRROR:-stable}"
|
||||||
|
|
||||||
DOCKER_ARGS=(
|
DOCKER_ARGS=(
|
||||||
--rm
|
--rm
|
||||||
--privileged
|
--privileged
|
||||||
-e "OMARCHY_INSTALLER_REPO=$OMARCHY_INSTALLER_REPO"
|
-e "OMARCHY_INSTALLER_REPO=$OMARCHY_INSTALLER_REPO"
|
||||||
-e "OMARCHY_INSTALLER_REF=$OMARCHY_INSTALLER_REF"
|
-e "OMARCHY_INSTALLER_REF=$OMARCHY_INSTALLER_REF"
|
||||||
|
-e "OMARCHY_MIRROR=$OMARCHY_MIRROR"
|
||||||
-e "HOST_UID=$(id -u)"
|
-e "HOST_UID=$(id -u)"
|
||||||
-e "HOST_GID=$(id -g)"
|
-e "HOST_GID=$(id -g)"
|
||||||
-v "$BUILD_RELEASE_PATH/:/out/"
|
-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
|
# Install omarchy-keyring for package verification during build
|
||||||
# The [omarchy] repo is defined in /configs/pacman-online.conf with SigLevel = Optional TrustAll
|
# 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
|
pacman-key --populate omarchy
|
||||||
|
|
||||||
# Setup build locations
|
# 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
|
# Download all the packages to the offline mirror inside the ISO
|
||||||
mkdir -p /tmp/offlinedb
|
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
|
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.
|
# 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