Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
path: root/build_iso.sh
diff options
context:
space:
mode:
Diffstat (limited to 'build_iso.sh')
-rwxr-xr-xbuild_iso.sh50
1 files changed, 50 insertions, 0 deletions
diff --git a/build_iso.sh b/build_iso.sh
new file mode 100755
index 00000000..682b69df
--- /dev/null
+++ b/build_iso.sh
@@ -0,0 +1,50 @@
+#!/bin/bash
+
+set -e
+
+packages_file="/tmp/archlive/packages.x86_64"
+
+# Packages to add to the archiso profile packages
+packages=(
+ gcc
+ git
+ pkgconfig
+ python
+ python-pip
+ python-build
+ python-setuptools
+ python-wheel
+ python-simple-term-menu
+ python-pyparted
+)
+
+mkdir -p /tmp/archlive/airootfs/root/archinstall-git
+cp -r . /tmp/archlive/airootfs/root/archinstall-git
+
+cat <<- _EOF_ | tee /tmp/archlive/airootfs/root/.zprofile
+ cd archinstall-git
+ rm -rf dist
+
+ python -m build --wheel --no-isolation
+ pip install dist/archinstall*.whl --break-system-packages
+
+ echo "This is an unofficial ISO for development and testing of archinstall. No support will be provided."
+ echo "This ISO was built from Git SHA $GITHUB_SHA"
+ echo "Type archinstall to launch the installer."
+_EOF_
+
+pacman --noconfirm -S archiso
+
+cp -r /usr/share/archiso/configs/releng/* /tmp/archlive
+
+sed -i /archinstall/d "$packages_file"
+
+# Add packages to the archiso profile packages
+for package in "${packages[@]}"; do
+ echo "$package" >> "$packages_file"
+done
+
+find /tmp/archlive
+cd /tmp/archlive
+
+mkarchiso -v -w work/ -o out/ ./