From 8e94c144b376015cf67750bbf2727204c4bb213b Mon Sep 17 00:00:00 2001 From: nippy Date: Sun, 12 Apr 2026 16:43:55 +0200 Subject: update Live --- raveos-calamares/0001-support-yay.patch | 155 +++++++ raveos-calamares/0002-limit-translations.patch | 22 + raveos-calamares/PKGBUILD | 88 ++++ raveos-calamares/images/partition-alongside.svg | 505 +++++++++++++++++++++++ raveos-calamares/images/partition-disk.svg | 440 ++++++++++++++++++++ raveos-calamares/images/partition-erase-auto.svg | 403 ++++++++++++++++++ raveos-calamares/images/partition-manual.svg | 378 +++++++++++++++++ raveos-calamares/images/partition-partition.svg | 369 +++++++++++++++++ raveos-calamares/images/partition-replace-os.svg | 499 ++++++++++++++++++++++ 9 files changed, 2859 insertions(+) create mode 100644 raveos-calamares/0001-support-yay.patch create mode 100644 raveos-calamares/0002-limit-translations.patch create mode 100644 raveos-calamares/PKGBUILD create mode 100644 raveos-calamares/images/partition-alongside.svg create mode 100644 raveos-calamares/images/partition-disk.svg create mode 100644 raveos-calamares/images/partition-erase-auto.svg create mode 100644 raveos-calamares/images/partition-manual.svg create mode 100644 raveos-calamares/images/partition-partition.svg create mode 100644 raveos-calamares/images/partition-replace-os.svg (limited to 'raveos-calamares') diff --git a/raveos-calamares/0001-support-yay.patch b/raveos-calamares/0001-support-yay.patch new file mode 100644 index 0000000..2f41b31 --- /dev/null +++ b/raveos-calamares/0001-support-yay.patch @@ -0,0 +1,155 @@ +diff --git a/src/modules/packages/main.py b/src/modules/packages/main.py +index e373a3443..05c8d22d3 100644 +--- a/src/modules/packages/main.py ++++ b/src/modules/packages/main.py +@@ -475,6 +475,135 @@ class PMPacman(PackageManager): + + self.run_pacman(command) + ++class PMYay(PackageManager): ++ backend = "yay" ++ ++ def __init__(self): ++ import re ++ import shutil ++ ++ progress_match = re.compile("^\\((\\d+)/(\\d+)\\)") ++ ++ # Note that this writes to /etc/sudoers.d, NOT /etc/sudoers! ++ sudoers_entry = open("/etc/sudoers.d/autoupdate", "w") ++ sudoers_entry.write("nobody ALL = NOPASSWD: " + shutil.which("pacman")) ++ sudoers_entry.close() ++ ++ def line_cb(line): ++ if line.startswith(":: "): ++ self.in_package_changes = "package" in line or "hooks" in line ++ else: ++ if self.in_package_changes and line.endswith("...\n"): ++ # Update the message, untranslated; do not change the ++ # progress percentage, since there may be more "installing..." ++ # lines in the output for the group, than packages listed ++ # explicitly. We don't know how to calculate proper progress. ++ global custom_status_message ++ custom_status_message = "yay: " + line.strip() ++ libcalamares.job.setprogress(self.progress_fraction) ++ libcalamares.utils.debug(line) ++ ++ self.in_package_changes = False ++ self.line_cb = line_cb ++ ++ yay = libcalamares.job.configuration.get("yay", None) ++ if yay is None: ++ yay = dict() ++ if type(yay) is not dict: ++ libcalamares.utils.warning("Job configuration *yay* will be ignored.") ++ yay = dict() ++ self.yay_num_retries = yay.get("num_retries", 0) ++ self.yay_disable_timeout = yay.get("disable_download_timeout", False) ++ self.yay_needed_only = yay.get("needed_only", False) ++ ++ def reset_progress(self): ++ self.in_package_changes = False ++ # These are globals ++ self.progress_fraction = (completed_packages * 1.0 / total_packages) ++ ++ def run_yay(self, command, callback=False): ++ """ ++ Call yay in a loop until it is successful or the number of retries is exceeded ++ :param command: The yay command to run ++ :param callback: An optional boolean that indicates if this yay run should use the callback ++ :return: ++ """ ++ ++ yay_count = 0 ++ while yay_count <= self.yay_num_retries: ++ yay_count += 1 ++ try: ++ if False: # callback: ++ libcalamares.utils.target_env_process_output(command, self.line_cb) ++ else: ++ libcalamares.utils.target_env_process_output(command) ++ ++ return ++ except subprocess.CalledProcessError: ++ if yay_count <= self.yay_num_retries: ++ pass ++ else: ++ raise ++ ++ def install(self, pkgs, from_local=False): ++ import os ++ ++ os.environ["PWD"] = "/var/cache" ++ os.environ["XDG_CACHE_HOME"] = "/var/cache" ++ ++ command = ["sudo", "-E", "-u", "nobody", "yay"] ++ ++ if from_local: ++ command.append("-U") ++ else: ++ command.append("-S") ++ ++ # Don't ask for user intervention, take the default action ++ command.append("--noconfirm") ++ ++ # Don't report download progress for each file ++ command.append("--noprogressbar") ++ ++ if self.yay_needed_only is True: ++ command.append("--needed") ++ ++ if self.yay_disable_timeout is True: ++ command.append("--disable-download-timeout") ++ ++ command += pkgs ++ ++ self.reset_progress() ++ self.run_yay(command, True) ++ ++ def remove(self, pkgs): ++ import os ++ ++ os.environ["PWD"] = "/var/cache" ++ os.environ["XDG_CACHE_HOME"] = "/var/cache" ++ ++ self.reset_progress() ++ self.run_yay(["sudo", "-E", "-u", "nobody", "yay", "-Rs", "--noconfirm"] + pkgs, True) ++ ++ def update_db(self): ++ import os ++ ++ os.environ["PWD"] = "/var/cache" ++ os.environ["XDG_CACHE_HOME"] = "/var/cache" ++ ++ self.run_yay(["sudo", "-E", "-u", "nobody", "yay", "-Sy"]) ++ ++ def update_system(self): ++ import os ++ ++ os.environ["PWD"] = "/var/cache" ++ os.environ["XDG_CACHE_HOME"] = "/var/cache" ++ ++ command = ["sudo", "-E", "-u", "nobody", "yay", "-Su", "--noconfirm"] ++ if self.yay_disable_timeout is True: ++ command.append("--disable-download-timeout") ++ ++ self.run_yay(command) ++ + + class PMPamac(PackageManager): + backend = "pamac" +diff --git a/src/modules/packages/packages.conf b/src/modules/packages/packages.conf +index 6e62f4b5f..74ab8d3cb 100644 +--- a/src/modules/packages/packages.conf ++++ b/src/modules/packages/packages.conf +@@ -29,6 +29,7 @@ + # - pacman - Pacman + # - pamac - Manjaro package manager + # - portage - Gentoo package manager ++# - yay - AUR package manager + # - yum - Yum RPM frontend + # - zypp - Zypp RPM frontend + # +-- +2.35.1 + diff --git a/raveos-calamares/0002-limit-translations.patch b/raveos-calamares/0002-limit-translations.patch new file mode 100644 index 0000000..e4b631c --- /dev/null +++ b/raveos-calamares/0002-limit-translations.patch @@ -0,0 +1,22 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index ae06ff493..c40d89f25 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -169,12 +169,9 @@ + # NOTE: update these lines by running `txstats.py`, or for full automation + # `txstats.py -e`. See also + # +-# Total 82 languages +-set( _tx_complete ar az ca cs_CZ de en es es_AR fi_FI fr he hu id +- ja kk ko lg nb pl pt_BR ru sv tg tr_TR uk zh_CN zh_TW ) # 27 languages +-set( _tx_good az_AZ bg fur hr is it_IT ka lt pt_PT sk sq uz ) # 12 languages +-set( _tx_ok as ast be bn ca@valencia da el en_GB eo es_MX et eu fa +- gl hi ia ml mr nl oc ro si sl sr sr@latin th vi ) # 27 languages ++set( _tx_complete de en hu ) ++set( _tx_good ) ++set( _tx_ok en_GB ) + set( _tx_incomplete bs es_PR fr_CA gu ie ja-Hira kn lo lv mk ne_NP + ta_IN te ur zh zh_HK ) # 16 languages + # Total 82 languages +-- +2.35.1 diff --git a/raveos-calamares/PKGBUILD b/raveos-calamares/PKGBUILD new file mode 100644 index 0000000..be5338b --- /dev/null +++ b/raveos-calamares/PKGBUILD @@ -0,0 +1,88 @@ +# Maintainer: +# Contributor: Rustmilian Rustmilian@proton.me + +_pkgname="calamares" +pkgname="$_pkgname" +pkgver=3.4.2 +pkgrel=7 +pkgdesc="Distribution-independent installer framework" +url="https://codeberg.org/Calamares/calamares" +license=("GPL-3.0-or-later") +arch=('x86_64') + +depends=( + 'kcoreaddons' + 'kpmcore' + 'libpwquality' + 'python' + 'qt6-declarative' + 'qt6-svg' + 'yaml-cpp' +) +makedepends=( + 'extra-cmake-modules' + 'ninja' + 'python' + 'qt6-tools' + 'qt6-translations' +) + +_pkgsrc="$_pkgname" +_pkgext="tar.gz" +source=("$_pkgname-$pkgver.$_pkgext"::"$url/releases/download/v$pkgver/$_pkgname-$pkgver.$_pkgext" + "0001-support-yay.patch" + "0002-limit-translations.patch") +sha256sums=('733bbbb00dc9f84874bd5c22960952f317ea2537565431179fa2152b2fbfdccc' + 'SKIP' + 'SKIP') + +prepare() { + cd $srcdir/$_pkgname-$pkgver + patch -Np1 -i ../0001-support-yay.patch + patch -Np1 -i ../0002-limit-translations.patch + + # Copy across the custom images + cp -a ${startdir}/images/partition-alongside.svg $srcdir/$_pkgname-$pkgver/data/images/partition-alongside.svg + cp -a ${startdir}/images/partition-disk.svg $srcdir/$_pkgname-$pkgver/data/images/partition-disk.svg + cp -a ${startdir}/images/partition-erase-auto.svg $srcdir/$_pkgname-$pkgver/data/images/partition-erase-auto.svg + cp -a ${startdir}/images/partition-manual.svg $srcdir/$_pkgname-$pkgver/data/images/partition-manual.svg + cp -a ${startdir}/images/partition-partition.svg $srcdir/$_pkgname-$pkgver/data/images/partition-partition.svg + cp -a ${startdir}/images/partition-replace-os.svg $srcdir/$_pkgname-$pkgver/data/images/partition-replace-os.svg + } + +build() { + local _skip_modules=( + dracut + dracutlukscfg + dummycpp + dummyprocess + initramfs + initramfscfg + interactiveterminal + services-openrc + ) + + local _pkgsrc_dir="$srcdir/$_pkgname-$pkgver" + + local _cmake_options=( + -B build + -S "$_pkgsrc_dir" + -G Ninja + -DCMAKE_BUILD_TYPE=Release + -DCMAKE_INSTALL_PREFIX='/usr' + -DCMAKE_INSTALL_LIBDIR='lib' + -DWITH_QT6=ON + -DINSTALL_CONFIG=ON + -DWITH_PYTHON=ON + -DWITH_NETINSTALL=ON + -DBUILD_TESTING=OFF + -Wno-dev + ) + + cmake "${_cmake_options[@]}" + cmake --build build +} + +package() { + DESTDIR="$pkgdir" cmake --install build +} diff --git a/raveos-calamares/images/partition-alongside.svg b/raveos-calamares/images/partition-alongside.svg new file mode 100644 index 0000000..9ac8a3f --- /dev/null +++ b/raveos-calamares/images/partition-alongside.svg @@ -0,0 +1,505 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/raveos-calamares/images/partition-disk.svg b/raveos-calamares/images/partition-disk.svg new file mode 100644 index 0000000..f2c24ea --- /dev/null +++ b/raveos-calamares/images/partition-disk.svg @@ -0,0 +1,440 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + diff --git a/raveos-calamares/images/partition-erase-auto.svg b/raveos-calamares/images/partition-erase-auto.svg new file mode 100644 index 0000000..82ed965 --- /dev/null +++ b/raveos-calamares/images/partition-erase-auto.svg @@ -0,0 +1,403 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/raveos-calamares/images/partition-manual.svg b/raveos-calamares/images/partition-manual.svg new file mode 100644 index 0000000..dac1471 --- /dev/null +++ b/raveos-calamares/images/partition-manual.svg @@ -0,0 +1,378 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + diff --git a/raveos-calamares/images/partition-partition.svg b/raveos-calamares/images/partition-partition.svg new file mode 100644 index 0000000..1e7aa5a --- /dev/null +++ b/raveos-calamares/images/partition-partition.svg @@ -0,0 +1,369 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + diff --git a/raveos-calamares/images/partition-replace-os.svg b/raveos-calamares/images/partition-replace-os.svg new file mode 100644 index 0000000..c05f59c --- /dev/null +++ b/raveos-calamares/images/partition-replace-os.svg @@ -0,0 +1,499 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -- cgit v1.3