diff options
Diffstat (limited to 'user/horizon/APKBUILD')
-rw-r--r-- | user/horizon/APKBUILD | 166 |
1 files changed, 166 insertions, 0 deletions
diff --git a/user/horizon/APKBUILD b/user/horizon/APKBUILD new file mode 100644 index 000000000..25cfc4d63 --- /dev/null +++ b/user/horizon/APKBUILD @@ -0,0 +1,166 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=horizon +pkgver=0.9.9.1 +pkgrel=1 +pkgdesc="Installation tools for Adélie Linux" +url="https://horizon.adelielinux.org/" +arch="all" +options="!archcheck !check suid" # Unpackaged dependency ruby-aruba. +license="AGPL-3.0+" +depends="" +checkdepends="ruby-aruba ruby-rspec valgrind" +# Second group is the Qt5 UI deps. +makedepends="bcnm-dev boost-dev cmake curl-dev eudev-dev libarchive-dev + linux-headers parted-dev skalibs-dev util-linux-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/$pkgname-$pkgver.tar.xz + ppc32-apm.patch + " + +build() { + if [ "$CBUILD" != "$CHOST" ]; then + CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux" + fi + cmake \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DBUILD_SHARED_LIBS=True \ + -DBUILD_TOOLS=ON \ + -DCMAKE_BUILD_TYPE=RelWithDebugInfo \ + -DCMAKE_CXX_FLAGS="$CXXFLAGS -Wno-format-truncation -Wno-type-limits" \ + -DCMAKE_C_FLAGS="$CFLAGS" \ + -DUNSUPPORTED_NONFREE_FIRMWARE=ON \ + -DINSTALL=ON \ + ${CMAKE_CROSSOPTS} \ + -Bbuild + make -C build + + cmake \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DBUILD_SHARED_LIBS=False \ + -DBUILD_TOOLS=OFF \ + -DBUILD_UI=ON \ + -DCMAKE_BUILD_TYPE=RelWithDebugInfo \ + -DCMAKE_CXX_FLAGS="$CXXFLAGS -Wno-format-truncation" \ + -DCMAKE_C_FLAGS="$CFLAGS" \ + -DUNSUPPORTED_NONFREE_FIRMWARE=ON \ + -DINSTALL=OFF \ + ${CMAKE_CROSSOPTS} \ + -Bbuild-wizard + make -C build-wizard +} + +check() { + CTEST_OUTPUT_ON_FAILURE=TRUE make -C build test +} + +package() { + make DESTDIR="$pkgdir" -C build install +} + +image() { + pkgdesc="Tools for generating images using HorizonScript" + depends="dracut mtools squashfs-tools xorriso" + mkdir -p "$subpkgdir"/usr/bin + mkdir -p "$subpkgdir"/usr/lib + mkdir -p "$subpkgdir"/usr/share/horizon + + mv "$pkgdir"/usr/bin/hscript-image "$subpkgdir"/usr/bin/ + mv "$pkgdir"/usr/lib/libhi-backends.so "$subpkgdir"/usr/lib/ + mv "$pkgdir"/usr/share/horizon/iso "$subpkgdir"/usr/share/horizon/ +} + +qt5() { + pkgdesc="Qt 5 installation wizard for Adélie Linux" + depends="horizon" + mkdir -p "$subpkgdir"/etc/horizon + mkdir -p "$subpkgdir"/usr/bin + mkdir -p "$subpkgdir"/var/log/horizon + + 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 + /sbin/setcap cap_sys_time+ep "$subpkgdir"/usr/bin/horizon-qt5 +} + +tools() { + pkgdesc="Tools for authoring HorizonScript files" + mkdir -p "$subpkgdir"/usr/bin + + for _bin in hscript-fromjson hscript-simulate hscript-validate; do + mv "$pkgdir"/usr/bin/$_bin "$subpkgdir"/usr/bin/ + done +} + +wizard() { + pkgdesc="Wizard to generate a HorizonScript for another computer" + + make DESTDIR="$subpkgdir" -C "$builddir"/build-wizard install + rm -r "$subpkgdir"/usr/include + rm -r "$subpkgdir"/usr/lib + rm -r "$subpkgdir"/usr/share +} + +boot() { + pkgdesc="Boot to Horizon" + 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/graphical + mkdir -p "$subpkgdir"/etc/sddm.conf.d + mkdir -p "$subpkgdir"/etc/xdg/qt5ct + mkdir -p "$subpkgdir"/usr/bin + mkdir -p "$subpkgdir"/usr/share/qt5ct/qss + mkdir -p "$subpkgdir"/usr/share/xsessions + + cat >"$subpkgdir"/etc/profile.d/horizon-qt5.sh <<PROFILE +#!/bin/sh +export QT_QUICK_BACKEND=software +export QT_QPA_PLATFORMTHEME=qt5ct +PROFILE + chmod 755 "$subpkgdir"/etc/profile.d/horizon-qt5.sh + cat >"$subpkgdir"/etc/xdg/kdeglobals <<GLOBALS +[General] +ColorScheme=Steel + +[Icons] +Theme=Papirus + +[WM] +activeBackground=104,0,0 +GLOBALS + + install -D -m644 "$builddir"/boot/horizon.sddm.conf \ + "$subpkgdir"/etc/sddm.conf.d/horizon.conf + + install -D -m755 "$builddir"/boot/gfxdetect \ + "$subpkgdir"/etc/init.d/gfxdetect + + ln -s ../../init.d/gfxdetect \ + "$subpkgdir"/etc/runlevels/graphical/gfxdetect + + install -D -m755 "$builddir"/boot/start-horizon-qt5 \ + "$subpkgdir"/usr/bin/start-horizon-qt5 + + install -D -m644 "$builddir"/boot/kwinrc \ + "$subpkgdir"/etc/xdg/kwinrc + + install -D -m644 "$builddir"/boot/qt5ct.conf \ + "$subpkgdir"/etc/xdg/qt5ct/qt5ct.conf + install -D -m644 "$builddir"/boot/horizon.qss \ + "$subpkgdir"/usr/share/qt5ct/qss/horizon.qss + + install -D -m644 "$builddir"/boot/horizon-session.desktop \ + "$subpkgdir"/usr/share/xsessions/horizon.desktop +} + +sha512sums="270926f74450f3250ae168fd31fd897a0bf0e444d0fb9753ebdc571157c89e873e13ed80030d93f5b470cc1876d2f9f00527ad0df2a0d15798dc6fbd4fe0641d horizon-0.9.9.1.tar.xz +f3977cf247436301a2f8975859f888ee24ac305f7389317a4642f07d3dd6e30cea7f9076392f35187d034c6fcb7d5c4575ba007b50fc5e24577c0debd3c4a410 ppc32-apm.patch" |