From 00b0ae7ba439a5a420095175b3bedd52c569db51 Mon Sep 17 00:00:00 2001 From: Daniel Girtler Date: Wed, 19 Apr 2023 20:55:42 +1000 Subject: PyParted and a large rewrite of the underlying partitioning (#1604) * Invert mypy files * Add optional pre-commit hooks * New profile structure * Serialize profiles * Use profile instead of classmethod * Custom profile setup * Separator between back * Support profile import via url * Move profiles module * Refactor files * Remove symlink * Add user to docker group * Update schema description * Handle list services * mypy fixes * mypy fixes * Rename profilesv2 to profiles * flake8 * mypy again * Support selecting DM * Fix mypy * Cleanup * Update greeter setting * Update schema * Revert toml changes * Poc external dependencies * Dependency support * New encryption menu * flake8 * Mypy and flake8 * Unify lsblk command * Update bootloader configuration * Git hooks * Fix import * Pyparted * Remove custom font setting * flake8 * Remove default preview * Manual partitioning menu * Update structure * Disk configuration * Update filesystem * luks2 encryption * Everything works until installation * Btrfsutil * Btrfs handling * Update btrfs * Save encryption config * Fix pipewire issue * Update mypy version * Update all pre-commit * Update package versions * Revert audio/pipewire * Merge master PRs * Add master changes * Merge master changes * Small renaming * Pull master changes * Reset disk enc after disk config change * Generate locals * Update naming * Fix imports * Fix broken sync * Fix pre selection on table menu * Profile menu * Update profile * Fix post_install * Added python-pyparted to PKGBUILD, this requires [testing] to be enabled in order to run makepkg. Package still works via python -m build etc. * Swaped around some setuptools logic in pyproject Since we define `package-data` and `packages` there should be no need for: ``` [tool.setuptools.packages.find] where = ["archinstall", "archinstall.*"] ``` * Removed pyproject collisions. Duplicate definitions. * Made sure pyproject.toml includes languages * Add example and update README * Fix pyproject issues * Generate locale * Refactor imports * Simplify imports * Add profile description and package examples * Align code * Fix mypy * Simplify imports * Fix saving config * Fix wrong luks merge * Refactor installation * Fix cdrom device loading * Fix wrongly merged code * Fix imports and greeter * Don't terminate on partprobe error * Use specific path on partprobe from luks * Update archinstall/lib/disk/device_model.py Co-authored-by: codefiles <11915375+codefiles@users.noreply.github.com> * Update archinstall/lib/disk/device_model.py Co-authored-by: codefiles <11915375+codefiles@users.noreply.github.com> * Update github workflow to test archinstall installation * Update sway merge * Generate locales * Update workflow --------- Co-authored-by: Daniel Girtler Co-authored-by: Anton Hvornum Co-authored-by: Anton Hvornum Co-authored-by: codefiles <11915375+codefiles@users.noreply.github.com> --- build_iso.sh | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100755 build_iso.sh (limited to 'build_iso.sh') diff --git a/build_iso.sh b/build_iso.sh new file mode 100755 index 00000000..74e815ee --- /dev/null +++ b/build_iso.sh @@ -0,0 +1,31 @@ +#!/bin/bash + +zprofile="/tmp/archlive/airootfs/root/.zprofile" + +mkdir -p /tmp/archlive/airootfs/root/archinstall-git +cp -r . /tmp/archlive/airootfs/root/archinstall-git + +echo "pip uninstall archinstall -y" > $zprofile +echo "cd archinstall-git" >> $zprofile +echo "rm -rf dist" >> $zprofile + +echo "python -m build --wheel --no-isolation" >> $zprofile +echo "pip install dist/archinstall*.whl" >> $zprofile + +echo "echo \"This is an unofficial ISO for development and testing of archinstall. No support will be provided.\"" >> $zprofile +echo "echo \"This ISO was built from Git SHA $GITHUB_SHA\"" >> $zprofile +echo "echo \"Type archinstall to launch the installer.\"" >> $zprofile + +cat $zprofile + +pacman -Sy +pacman --noconfirm -S git archiso + +cp -r /usr/share/archiso/configs/releng/* /tmp/archlive + +echo -e "git\npython\npython-pip\npython-build\npython-flit\npython-setuptools\npython-wheel\npython-pyparted" >> /tmp/archlive/packages.x86_64 + +find /tmp/archlive +cd /tmp/archlive + +mkarchiso -v -w work/ -o out/ ./ -- cgit v1.2.3-54-g00ecf From 232939e910433ceb2c426a3de224587473c03182 Mon Sep 17 00:00:00 2001 From: Daemon Coder <11915375+codefiles@users.noreply.github.com> Date: Sun, 7 May 2023 02:41:50 -0400 Subject: Refactor `build_iso.sh` added packages (#1797) --- build_iso.sh | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'build_iso.sh') diff --git a/build_iso.sh b/build_iso.sh index 74e815ee..c63c20d4 100755 --- a/build_iso.sh +++ b/build_iso.sh @@ -2,6 +2,18 @@ zprofile="/tmp/archlive/airootfs/root/.zprofile" +# Packages to add to the archiso profile packages +packages=( + git + python + python-pip + python-build + python-flit + python-setuptools + python-wheel + python-pyparted +) + mkdir -p /tmp/archlive/airootfs/root/archinstall-git cp -r . /tmp/archlive/airootfs/root/archinstall-git @@ -23,7 +35,10 @@ pacman --noconfirm -S git archiso cp -r /usr/share/archiso/configs/releng/* /tmp/archlive -echo -e "git\npython\npython-pip\npython-build\npython-flit\npython-setuptools\npython-wheel\npython-pyparted" >> /tmp/archlive/packages.x86_64 +# Add packages to the archiso profile packages +for package in "${packages[@]}"; do + echo "$package" >> /tmp/archlive/packages.x86_64 +done find /tmp/archlive cd /tmp/archlive -- cgit v1.2.3-54-g00ecf From c10acfa5aeda44db9393fbbbf75356c0ff411e43 Mon Sep 17 00:00:00 2001 From: Daemon Coder <11915375+codefiles@users.noreply.github.com> Date: Sun, 7 May 2023 03:04:44 -0400 Subject: Refactor `build_iso.sh` zprofile (#1799) --- build_iso.sh | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) (limited to 'build_iso.sh') diff --git a/build_iso.sh b/build_iso.sh index c63c20d4..df57b723 100755 --- a/build_iso.sh +++ b/build_iso.sh @@ -1,7 +1,5 @@ #!/bin/bash -zprofile="/tmp/archlive/airootfs/root/.zprofile" - # Packages to add to the archiso profile packages packages=( git @@ -17,18 +15,18 @@ packages=( mkdir -p /tmp/archlive/airootfs/root/archinstall-git cp -r . /tmp/archlive/airootfs/root/archinstall-git -echo "pip uninstall archinstall -y" > $zprofile -echo "cd archinstall-git" >> $zprofile -echo "rm -rf dist" >> $zprofile - -echo "python -m build --wheel --no-isolation" >> $zprofile -echo "pip install dist/archinstall*.whl" >> $zprofile +cat <<- _EOF_ | tee /tmp/archlive/airootfs/root/.zprofile + pip uninstall archinstall -y + cd archinstall-git + rm -rf dist -echo "echo \"This is an unofficial ISO for development and testing of archinstall. No support will be provided.\"" >> $zprofile -echo "echo \"This ISO was built from Git SHA $GITHUB_SHA\"" >> $zprofile -echo "echo \"Type archinstall to launch the installer.\"" >> $zprofile + python -m build --wheel --no-isolation + pip install dist/archinstall*.whl -cat $zprofile + 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 -Sy pacman --noconfirm -S git archiso -- cgit v1.2.3-54-g00ecf From dc19d5f0fa8283f6bdb954987f282a44fcb197a1 Mon Sep 17 00:00:00 2001 From: Daemon Coder <11915375+codefiles@users.noreply.github.com> Date: Sun, 7 May 2023 04:16:52 -0400 Subject: Refactor `build_iso.sh` archinstall archiso profile package (#1803) --- build_iso.sh | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'build_iso.sh') diff --git a/build_iso.sh b/build_iso.sh index df57b723..073a5459 100755 --- a/build_iso.sh +++ b/build_iso.sh @@ -1,5 +1,7 @@ #!/bin/bash +packages_file="/tmp/archlive/packages.x86_64" + # Packages to add to the archiso profile packages packages=( git @@ -16,7 +18,6 @@ mkdir -p /tmp/archlive/airootfs/root/archinstall-git cp -r . /tmp/archlive/airootfs/root/archinstall-git cat <<- _EOF_ | tee /tmp/archlive/airootfs/root/.zprofile - pip uninstall archinstall -y cd archinstall-git rm -rf dist @@ -33,9 +34,11 @@ pacman --noconfirm -S git 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" >> /tmp/archlive/packages.x86_64 + echo "$package" >> $packages_file done find /tmp/archlive -- cgit v1.2.3-54-g00ecf From 1df53c1406960b5d7b17bb7ee84431f8de7bfbdf Mon Sep 17 00:00:00 2001 From: Daemon Coder <11915375+codefiles@users.noreply.github.com> Date: Sun, 7 May 2023 08:02:56 -0400 Subject: Remove Flit from `build_iso.sh` added packages (#1804) --- build_iso.sh | 1 - 1 file changed, 1 deletion(-) (limited to 'build_iso.sh') diff --git a/build_iso.sh b/build_iso.sh index 073a5459..48f5bef6 100755 --- a/build_iso.sh +++ b/build_iso.sh @@ -8,7 +8,6 @@ packages=( python python-pip python-build - python-flit python-setuptools python-wheel python-pyparted -- cgit v1.2.3-54-g00ecf From 6e6b850a8f687b193172aaa321d49bd2956c1d4f Mon Sep 17 00:00:00 2001 From: Daemon Coder <11915375+codefiles@users.noreply.github.com> Date: Mon, 8 May 2023 10:06:34 -0400 Subject: Add `set -e` to `build_iso.sh` (#1806) --- build_iso.sh | 2 ++ 1 file changed, 2 insertions(+) (limited to 'build_iso.sh') diff --git a/build_iso.sh b/build_iso.sh index 48f5bef6..26adf95e 100755 --- a/build_iso.sh +++ b/build_iso.sh @@ -1,5 +1,7 @@ #!/bin/bash +set -e + packages_file="/tmp/archlive/packages.x86_64" # Packages to add to the archiso profile packages -- cgit v1.2.3-54-g00ecf From 5276d95339368210e75791e2b88c1bf5aca4517b Mon Sep 17 00:00:00 2001 From: codefiles <11915375+codefiles@users.noreply.github.com> Date: Mon, 15 May 2023 09:53:42 -0400 Subject: Remove partial upgrade from `build_iso.sh` (#1809) --- build_iso.sh | 1 - 1 file changed, 1 deletion(-) (limited to 'build_iso.sh') diff --git a/build_iso.sh b/build_iso.sh index 26adf95e..80bd8bb0 100755 --- a/build_iso.sh +++ b/build_iso.sh @@ -30,7 +30,6 @@ cat <<- _EOF_ | tee /tmp/archlive/airootfs/root/.zprofile echo "Type archinstall to launch the installer." _EOF_ -pacman -Sy pacman --noconfirm -S git archiso cp -r /usr/share/archiso/configs/releng/* /tmp/archlive -- cgit v1.2.3-54-g00ecf From 21735c57ca4ace638b3c8faecc503720008fa82b Mon Sep 17 00:00:00 2001 From: Anton Hvornum Date: Wed, 5 Jul 2023 14:17:39 +0200 Subject: Added missing python-simple-term-menu (#1919) --- build_iso.sh | 1 + 1 file changed, 1 insertion(+) (limited to 'build_iso.sh') diff --git a/build_iso.sh b/build_iso.sh index 80bd8bb0..e18b9b6b 100755 --- a/build_iso.sh +++ b/build_iso.sh @@ -12,6 +12,7 @@ packages=( python-build python-setuptools python-wheel + python-simple-term-menu python-pyparted ) -- cgit v1.2.3-54-g00ecf From 71ecfcc24e249542a4fce38914bcbf75d3f334ba Mon Sep 17 00:00:00 2001 From: codefiles <11915375+codefiles@users.noreply.github.com> Date: Sun, 17 Sep 2023 15:38:19 -0400 Subject: Remove git install from `build_iso.sh` (#2063) --- build_iso.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'build_iso.sh') diff --git a/build_iso.sh b/build_iso.sh index e18b9b6b..3955b41a 100755 --- a/build_iso.sh +++ b/build_iso.sh @@ -31,7 +31,7 @@ cat <<- _EOF_ | tee /tmp/archlive/airootfs/root/.zprofile echo "Type archinstall to launch the installer." _EOF_ -pacman --noconfirm -S git archiso +pacman --noconfirm -S archiso cp -r /usr/share/archiso/configs/releng/* /tmp/archlive -- cgit v1.2.3-54-g00ecf From a095e393d8517e99f8832c447fd2ef0902cb6ca6 Mon Sep 17 00:00:00 2001 From: "Dylan M. Taylor" Date: Mon, 2 Oct 2023 01:50:58 -0400 Subject: Fix ArchInstall ISO build (#2142) --- build_iso.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'build_iso.sh') diff --git a/build_iso.sh b/build_iso.sh index 3955b41a..1049479c 100755 --- a/build_iso.sh +++ b/build_iso.sh @@ -6,7 +6,9 @@ packages_file="/tmp/archlive/packages.x86_64" # Packages to add to the archiso profile packages packages=( + gcc git + pkgconfig python python-pip python-build @@ -24,7 +26,7 @@ cat <<- _EOF_ | tee /tmp/archlive/airootfs/root/.zprofile rm -rf dist python -m build --wheel --no-isolation - pip install dist/archinstall*.whl + 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" -- cgit v1.2.3-54-g00ecf From 9543f59a1780357479c2eb1350bbd2a39205f4c9 Mon Sep 17 00:00:00 2001 From: simonfogliato Date: Tue, 7 May 2024 23:15:09 -0700 Subject: Corrected minor bash formatting warnings reported by shellcheck. (#2493) --- build_iso.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'build_iso.sh') diff --git a/build_iso.sh b/build_iso.sh index 1049479c..682b69df 100755 --- a/build_iso.sh +++ b/build_iso.sh @@ -14,7 +14,7 @@ packages=( python-build python-setuptools python-wheel - python-simple-term-menu + python-simple-term-menu python-pyparted ) @@ -37,11 +37,11 @@ pacman --noconfirm -S archiso cp -r /usr/share/archiso/configs/releng/* /tmp/archlive -sed -i /archinstall/d $packages_file +sed -i /archinstall/d "$packages_file" # Add packages to the archiso profile packages for package in "${packages[@]}"; do - echo "$package" >> $packages_file + echo "$package" >> "$packages_file" done find /tmp/archlive -- cgit v1.2.3-54-g00ecf