diff options
Diffstat (limited to 'user/horizon')
-rw-r--r-- | user/horizon/APKBUILD | 31 | ||||
-rw-r--r-- | user/horizon/apm-disklabel.patch | 75 |
2 files changed, 94 insertions, 12 deletions
diff --git a/user/horizon/APKBUILD b/user/horizon/APKBUILD index 92ec869e5..260ddc9b6 100644 --- a/user/horizon/APKBUILD +++ b/user/horizon/APKBUILD @@ -1,12 +1,12 @@ # Contributor: A. Wilcox <awilfox@adelielinux.org> # Maintainer: A. Wilcox <awilfox@adelielinux.org> pkgname=horizon -pkgver=0.9.7 -pkgrel=0 +pkgver=0.9.8.1 +pkgrel=1 pkgdesc="Installation tools for Adélie Linux" url="https://horizon.adelielinux.org/" arch="all" -options="!archcheck !check" # Unpackaged dependency ruby-aruba. +options="!archcheck !check suid" # Unpackaged dependency ruby-aruba. license="AGPL-3.0+" depends="" checkdepends="ruby-aruba ruby-rspec valgrind" @@ -14,10 +14,12 @@ checkdepends="ruby-aruba ruby-rspec valgrind" makedepends="bcnm-dev boost-dev cmake curl-dev eudev-dev libarchive-dev linux-headers parted-dev skalibs-dev util-linux-dev - libcap-dev libx11-dev libxkbfile-dev qt5-qtbase-dev" + libcap libcap-dev libx11-dev libxkbfile-dev qt5-qtbase-dev" subpackages="$pkgname-image $pkgname-dbg $pkgname-dev $pkgname-doc $pkgname-qt5 $pkgname-tools $pkgname-wizard $pkgname-boot" -source="https://distfiles.adelielinux.org/source/horizon-$pkgver.tar.xz" +source="https://distfiles.adelielinux.org/source/$pkgname-$pkgver.tar.xz + apm-disklabel.patch + " build() { if [ "$CBUILD" != "$CHOST" ]; then @@ -28,7 +30,7 @@ build() { -DBUILD_SHARED_LIBS=True \ -DBUILD_TOOLS=ON \ -DCMAKE_BUILD_TYPE=RelWithDebugInfo \ - -DCMAKE_CXX_FLAGS="$CXXFLAGS -Wno-format-truncation" \ + -DCMAKE_CXX_FLAGS="$CXXFLAGS -Wno-format-truncation -Wno-type-limits" \ -DCMAKE_C_FLAGS="$CFLAGS" \ -DUNSUPPORTED_NONFREE_FIRMWARE=ON \ -DINSTALL=ON \ @@ -61,7 +63,7 @@ package() { image() { pkgdesc="Tools for generating images using HorizonScript" - depends="dracut mtools" + depends="dracut mtools squashfs-tools xorriso" mkdir -p "$subpkgdir"/usr/bin mkdir -p "$subpkgdir"/usr/lib mkdir -p "$subpkgdir"/usr/share/horizon @@ -81,6 +83,10 @@ qt5() { for _bin in horizon-ppc64-detect horizon-qt5 horizon-run-qt5; do mv "$pkgdir"/usr/bin/$_bin "$subpkgdir"/usr/bin/ done + + chmod 4755 "$subpkgdir"/usr/bin/horizon-run-qt5 + chmod 1777 "$subpkgdir"/etc/horizon + /usr/sbin/setcap cap_sys_time+ep "$subpkgdir"/usr/bin/horizon-qt5 } tools() { @@ -103,12 +109,12 @@ wizard() { boot() { pkgdesc="Boot to Horizon" - depends="horizon-qt5 horizon kwin qt5ct sddm + depends="horizon-qt5 horizon kwin papirus-icons qt5ct sddm netsurf partitionmanager xterm" mkdir -p "$subpkgdir"/etc/init.d mkdir -p "$subpkgdir"/etc/profile.d - mkdir -p "$subpkgdir"/etc/runlevels/default + mkdir -p "$subpkgdir"/etc/runlevels/graphical mkdir -p "$subpkgdir"/etc/sddm.conf.d mkdir -p "$subpkgdir"/etc/xdg/qt5ct mkdir -p "$subpkgdir"/usr/bin @@ -124,7 +130,7 @@ PROFILE cat >"$subpkgdir"/etc/xdg/kdeglobals <<GLOBALS [General] ColorScheme=Steel - + [Icons] Theme=Papirus @@ -139,7 +145,7 @@ GLOBALS "$subpkgdir"/etc/init.d/gfxdetect ln -s ../../init.d/gfxdetect \ - "$subpkgdir"/etc/runlevels/default/gfxdetect + "$subpkgdir"/etc/runlevels/graphical/gfxdetect install -D -m755 "$builddir"/boot/start-horizon-qt5 \ "$subpkgdir"/usr/bin/start-horizon-qt5 @@ -156,4 +162,5 @@ GLOBALS "$subpkgdir"/usr/share/xsessions/horizon.desktop } -sha512sums="e25238cb6a9610088840277d1497841ac7e2dc68912784ee12e9321ba7f5f27d9621d4cc26af910ba048d8a9a0460910dbb36fd21c35db64833f525a25a3fa56 horizon-0.9.7.tar.xz" +sha512sums="3a34019d50cd711f868855b120a362ce67308e9eb9b32fab0a8936d393541f93beca76efe161c7d635f215445989176a7089d2df0d6fcb071428b4c1cf1ae252 horizon-0.9.8.1.tar.xz +1d92232b3118444973a0917777a1787e3e20b6d5a8da22f0031e37d94f6c1d9df0f05aa9228d3b24c414185f6a2c9c9401534f381b4195830cd5b1469cf23f46 apm-disklabel.patch" diff --git a/user/horizon/apm-disklabel.patch b/user/horizon/apm-disklabel.patch new file mode 100644 index 000000000..368aa8b05 --- /dev/null +++ b/user/horizon/apm-disklabel.patch @@ -0,0 +1,75 @@ +From 5df1abdb743ac71986cabe8c76dcd9a0f75e44da Mon Sep 17 00:00:00 2001 +From: "A. Wilcox" <AWilcox@Wilcox-Tech.com> +Date: Thu, 25 Apr 2024 23:27:30 -0500 +Subject: [PATCH] Qt UI: Fix partition count for APM disklabel + +The APM disklabel includes a meta partition for the partition map +itself. This is always counted by parted as a partition, and is *not* +considered to be a metadata partition. We therefore need to start our +partitioning at #2 on APM, not #1. + +Closes: #376 +--- + CHANGELOG.rst | 14 +++++++++++++- + ui/qt5/horizonwizard.cc | 6 ++++-- + 2 files changed, 17 insertions(+), 3 deletions(-) + +diff --git a/CHANGELOG.rst b/CHANGELOG.rst +index 7afcb34..b944410 100644 +--- a/CHANGELOG.rst ++++ b/CHANGELOG.rst +@@ -5,7 +5,19 @@ + * **A. Wilcox**, documentation writer + * **Contributors**, code + :Copyright: +- © 2019-2023 Adélie Linux and contributors. ++ © 2019-2024 Adélie Linux and contributors. ++ ++ ++ ++0.9.9 (2024-??-??) ++================== ++ ++Qt UI ++----- ++ ++* The Qt UI now counts APM partition map partitions when creating APM ++ disklabels, fixing a long-standing bug when installing to an empty disk ++ on PowerPC Macintosh systems. + + + +diff --git a/ui/qt5/horizonwizard.cc b/ui/qt5/horizonwizard.cc +index 298cd15..2872eb6 100644 +--- a/ui/qt5/horizonwizard.cc ++++ b/ui/qt5/horizonwizard.cc +@@ -400,7 +400,8 @@ QString nameForPartitionOnDisk(const std::string &dev, int part) { + /*! Determine the correct disk label based on the target platform. */ + QStringList eraseDiskForArch(const std::string &raw_disk, + HorizonWizard::Arch arch, +- HorizonWizard::Subarch subarch) { ++ HorizonWizard::Subarch subarch, ++ int *start) { + const auto disk = QString::fromStdString(raw_disk); + + switch(arch) { +@@ -412,6 +413,7 @@ QStringList eraseDiskForArch(const std::string &raw_disk, + case HorizonWizard::ppc64: /* Complicated */ + switch(subarch) { + case HorizonWizard::ppc64_PowerMac: ++ (*start)++; + return {QString{"disklabel %1 apm"}.arg(disk)}; + case HorizonWizard::ppc64_PowerNV: + return {QString{"disklabel %1 gpt"}.arg(disk)}; +@@ -620,7 +622,7 @@ QString HorizonWizard::toHScript() { + int start = 1; + + if(erase) { +- lines << eraseDiskForArch(chosen_disk, arch, subarch); ++ lines << eraseDiskForArch(chosen_disk, arch, subarch, &start); + } else { + /* This branch will be taken when "use available space" is back. */ + Q_ASSERT(false); +-- +2.40.0 + |