097dbf783c
bpo is currently failing to build images with the on-device installer, because calamares needs to be rebuilt against libboost_python38.so. Fork it until that's resolved. [ci:skip-vercheck] [ci:skip-build]: already built successfully in CI Related: https://builds.sr.ht/~postmarketos/job/398948#task-img_installer-307
179 lines
3.5 KiB
Text
179 lines
3.5 KiB
Text
# Forked from Alpine, builders are stuck and it needs a rebuild
|
|
|
|
pkgname=calamares
|
|
pkgver=3.2.35.1
|
|
pkgrel=1
|
|
# ppc64le, s390x, mips, mips64 blocked by qt5-qtwebengine
|
|
# armhf blocked by qt5-qtdeclarative
|
|
arch="aarch64 armv7"
|
|
url="https://calamares.io/"
|
|
pkgdesc="Distribution-independent installer framework"
|
|
license="GPL-3.0-or-later AND LGPL-2.1-only"
|
|
depends="
|
|
ckbcomp
|
|
musl-locales
|
|
os-prober
|
|
python3
|
|
"
|
|
depends_dev="
|
|
extra-cmake-modules
|
|
kcoreaddons-dev
|
|
qt5-qttools-dev
|
|
yaml-cpp-dev
|
|
"
|
|
makedepends="$depends_dev
|
|
extra-cmake-modules
|
|
kconfig-dev
|
|
kcrash-dev
|
|
ki18n-dev
|
|
kpackage-dev
|
|
kparts-dev
|
|
kpmcore-dev
|
|
kservice-dev
|
|
kwidgetsaddons-dev
|
|
libatasmart-dev
|
|
libpwquality-dev
|
|
plasma-framework-dev
|
|
polkit-qt-1-dev
|
|
qt5-qtbase-dev
|
|
qt5-qtdeclarative-dev
|
|
qt5-qtsvg-dev
|
|
qt5-qtwebengine-dev
|
|
"
|
|
# required for several modules
|
|
makedepends="$makedepends
|
|
boost-dev
|
|
boost-python3
|
|
parted-dev
|
|
python3-dev
|
|
"
|
|
checkdepends="xvfb-run tzdata"
|
|
source="https://github.com/calamares/calamares/archive/v$pkgver/calamares-$pkgver.tar.gz
|
|
modules-load.conf
|
|
"
|
|
subpackages="$pkgname-dev $pkgname-doc $pkgname-lang"
|
|
|
|
install="calamares-mod-unpackfs.post-install"
|
|
options="!check" # failing with qemu
|
|
|
|
# Modules to build:
|
|
# https://github.com/calamares/calamares/tree/master/src/modules
|
|
_modules="
|
|
bootloader
|
|
displaymanager
|
|
finished
|
|
fsresizer
|
|
fstab
|
|
grubcfg
|
|
hostinfo
|
|
hwclock
|
|
interactiveterminal
|
|
keyboard
|
|
keyboardq
|
|
locale
|
|
localeq
|
|
luksbootkeyfile
|
|
luksopenswaphookcfg
|
|
machineid
|
|
mkinitfs
|
|
mount
|
|
netinstall
|
|
networkcfg
|
|
notesqml
|
|
oemid
|
|
packagechooser
|
|
packages
|
|
partition
|
|
plasmalnf
|
|
plymouthcfg
|
|
preservefiles
|
|
rawfs
|
|
removeuser
|
|
services-openrc
|
|
shellprocess
|
|
summary
|
|
umount
|
|
unpackfs
|
|
users
|
|
webview
|
|
welcome
|
|
welcomeq
|
|
"
|
|
|
|
for i in $_modules; do
|
|
subpackages="$pkgname-mod-$i:_module $subpackages"
|
|
done
|
|
|
|
# Check if $1 is in $_modules
|
|
is_module_enabled() {
|
|
local i
|
|
for i in $_modules; do
|
|
[ "$i" = "$1" ] && return 0
|
|
done
|
|
return 1
|
|
}
|
|
|
|
prepare() {
|
|
default_prepare
|
|
|
|
local i
|
|
cd "$builddir/src/modules"
|
|
|
|
# Fill $_skip_modules, list disabled modules
|
|
msg "Disabled modules:"
|
|
for i in *; do
|
|
if ! [ -d "$i" ] || is_module_enabled "$i"; then
|
|
continue
|
|
fi
|
|
_skip_modules="$_skip_modules $i"
|
|
echo " - $i"
|
|
done
|
|
|
|
# List enabled modules
|
|
msg "Enabled modules:"
|
|
for i in $_modules; do
|
|
echo " - $i"
|
|
done
|
|
}
|
|
|
|
build() {
|
|
cmake -B build \
|
|
-DCMAKE_BUILD_TYPE=None \
|
|
-DCMAKE_INSTALL_PREFIX=/usr \
|
|
-DCMAKE_INSTALL_LIBDIR=lib \
|
|
-DINSTALL_CONFIG=ON \
|
|
-DSKIP_MODULES="$_skip_modules"
|
|
cmake --build build
|
|
}
|
|
|
|
check() {
|
|
cd build
|
|
# libcalamaresnetworktest requires network access
|
|
CTEST_OUTPUT_ON_FAILURE=TRUE xvfb-run ctest -E "libcalamaresnetworktest"
|
|
}
|
|
|
|
_module() {
|
|
local module=${subpkgname##calamares-mod-}
|
|
local path="usr/lib/calamares/modules"
|
|
|
|
mkdir -p "$subpkgdir/$path"
|
|
mv "$pkgdir/$path/$module" "$subpkgdir/$path/$module"
|
|
|
|
# Module-specific dependencies
|
|
case "$module" in
|
|
unpackfs)
|
|
depends="$depends rsync"
|
|
install -Dm644 "$srcdir"/modules-load.conf \
|
|
"$subpkgdir"/usr/lib/modules-load.d/calamares.conf
|
|
;;
|
|
mkinitfs) depends="$depends mkinitfs" ;;
|
|
locale) depends="$depends tzdata" ;;
|
|
esac
|
|
}
|
|
|
|
package() {
|
|
DESTDIR="$pkgdir" cmake --build build --target install
|
|
}
|
|
|
|
sha512sums="5c0c19fdfaeea85f467a6b59a3e088ad5709940a25521a28bbf8a9bb69a2e87d44f40a4500688c383036c48d4c4d70176bb170dcc39897fff3e09be3117de9ff calamares-3.2.35.1.tar.gz
|
|
c56ad3b92901abdb41cffaeceeff9a6c8dae3882aacf9a4b654a8898f1e26eeadda3ac3ac799b127b176cc31d397652f27a07bcdfbf7f4ede3c6826d08f7bd7d modules-load.conf"
|