diff options
Diffstat (limited to 'user/horizon/APKBUILD')
-rw-r--r-- | user/horizon/APKBUILD | 149 |
1 files changed, 149 insertions, 0 deletions
diff --git a/user/horizon/APKBUILD b/user/horizon/APKBUILD new file mode 100644 index 000000000..dcc9d9bf7 --- /dev/null +++ b/user/horizon/APKBUILD @@ -0,0 +1,149 @@ +# Contributor: A. Wilcox <awilfox@adelielinux.org> +# Maintainer: A. Wilcox <awilfox@adelielinux.org> +pkgname=horizon +pkgver=0.9.3 +pkgrel=0 +pkgdesc="Installation tools for Adélie Linux" +url="https://horizon.adelielinux.org/" +arch="all" +options="!archcheck !check" # 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-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" + +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" \ + -DCMAKE_C_FLAGS="$CFLAGS" \ + -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" \ + -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="mtools" + 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 +} + +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 qt5ct sddm + netsurf partitionmanager xterm" + + mkdir -p "$subpkgdir"/etc/profile.d + 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/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="99c1d939abc33c4a072712e75c6c8ada16deb1fe59b9da839dffd695a0d40dbf48499cc00751285300127a7fc701e8e1c434e9f8a222f1981ccbebd6ee72e43e horizon-0.9.3.tar.xz" |