%global debug_package %{nil} Name: uke-desktop-extras-integration Version: 1.0.0 Release: 1%{?dist} Summary: Uke desktop-extras-integration package selection and source family License: MIT URL: https://github.com/MCC45TR/uke-linux-hardware-support Source0: uke-desktop-extras-integration-1.0.0.tar.xz ExclusiveArch: aarch64 SourceLicense: MIT AND (GPL-2.0-or-later AND LGPL-2.0-or-later) AND (MIT) BuildRequires: cmake BuildRequires: extra-cmake-modules BuildRequires: gcc-c++ BuildRequires: gettext BuildRequires: jq BuildRequires: kdecoration-devel >= 6.6 BuildRequires: kf6-kcmutils-devel BuildRequires: kf6-kconfig-devel BuildRequires: kf6-kconfigwidgets-devel BuildRequires: kf6-kcoreaddons-devel BuildRequires: kf6-kguiaddons-devel BuildRequires: kf6-ki18n-devel BuildRequires: kf6-kiconthemes-devel BuildRequires: kf6-kservice-devel BuildRequires: kf6-kwindowsystem-devel BuildRequires: kwin-devel >= 6.6 BuildRequires: libdrm-devel BuildRequires: libepoxy-devel BuildRequires: qt6-qtbase-devel BuildRequires: qt6-qtdeclarative-devel BuildRequires: qt6-qttools-devel BuildRequires: vulkan-loader-devel BuildRequires: gcc-c++ plymouth-plugin-script plymouth-plugin-label abattis-cantarell-fonts BuildRequires: systemd-rpm-macros BuildRequires: tar xz %description Reviewed component sources with independent binary package identities. The source package adds no runtime selection RPM or service. %package -n uke-material-decoration Version: 20261006.094154 Release: 8.fc46 License: GPL-2.0-or-later AND LGPL-2.0-or-later Summary: Material window decoration and configuration for KWin 6 Requires: kwin(aarch-64) >= 6.6 Provides: material-decoration = 20261006.094154-7.fc46 Provides: material-decoration(aarch-64) = 20261006.094154-7.fc46 Obsoletes: material-decoration < 20261006.094154-7.fc46 Conflicts: material-decoration %description -n uke-material-decoration An optional Qt 6/C++ window decoration for KWin with an integrated application menu and search. Installing the package does not select or activate the decoration, and it does not replace Fedora KDE packages. %package -n uke-plymonth Version: 1.0.2 Release: 6.fc46 License: MIT BuildArch: noarch Summary: Senemos Uke boot and shutdown Plymouth theme Requires: plymouth plymouth-plugin-script plymouth-plugin-label Requires: abattis-cantarell-fonts Requires(post): plymouth-scripts Requires(preun): plymouth-scripts Provides: plymouth-uke = 1.0.2-1 Obsoletes: plymouth-uke < 1.0.2-1 Conflicts: plymouth-uke %description -n uke-plymonth Xiaomi and Fedora artwork with boot/update progress and a pulsing shutdown bar. The original Fedora Plymouth services show the theme after mounting the root filesystem and during shutdown/reboot. Installation selects the theme when a distribution default is in use; local custom themes remain selected. No initramfs, boot image, partition or boot-slot selection is changed. %prep %setup -q ( mkdir -p "%{_builddir}/uke-desktop-extras-integration-1.0.0/work/uke-plymonth" cd '%{_builddir}/uke-desktop-extras-integration-1.0.0/work/uke-plymonth' rm -rf 'uke-plymonth-1.0.2' /usr/bin/rpmuncompress -x '%{_builddir}/uke-desktop-extras-integration-1.0.0/inputs/uke-plymonth/uke-plymonth-1.0.2.tar.xz' STATUS=$? if [ $STATUS -ne 0 ]; then exit $STATUS fi cd 'uke-plymonth-1.0.2' /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . ( mkdir -p "%{_builddir}/uke-desktop-extras-integration-1.0.0/work/uke-plymonth/uke-plymonth-1.0.2/work/uke-plymonth" cd '%{_builddir}/uke-desktop-extras-integration-1.0.0/work/uke-plymonth/uke-plymonth-1.0.2/work/uke-plymonth' rm -rf 'uke-plymonth-1.0.2' /usr/bin/rpmuncompress -x '%{_builddir}/uke-desktop-extras-integration-1.0.0/work/uke-plymonth/uke-plymonth-1.0.2/inputs/uke-plymonth/uke-plymonth-1.0.2.tar.xz' STATUS=$? if [ $STATUS -ne 0 ]; then exit $STATUS fi cd 'uke-plymonth-1.0.2' /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . ) ) ( mkdir -p "%{_builddir}/uke-desktop-extras-integration-1.0.0/work/uke-material-decoration" cd '%{_builddir}/uke-desktop-extras-integration-1.0.0/work/uke-material-decoration' rm -rf 'uke-material-decoration-20261006.094154' /usr/bin/rpmuncompress -x '%{_builddir}/uke-desktop-extras-integration-1.0.0/inputs/uke-material-decoration/uke-material-decoration-20261006.094154.tar.xz' STATUS=$? if [ $STATUS -ne 0 ]; then exit $STATUS fi cd 'uke-material-decoration-20261006.094154' /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . ( mkdir -p "%{_builddir}/uke-desktop-extras-integration-1.0.0/work/uke-material-decoration/uke-material-decoration-20261006.094154/work/material-decoration" test "$(sha256sum %{_builddir}/uke-desktop-extras-integration-1.0.0/work/uke-material-decoration/uke-material-decoration-20261006.094154/inputs/material-decoration/material-decoration-0b778253ad6c8eb7fc227bd9d486515c00cdf377.tar.gz | cut -d ' ' -f1)" = "$(jq -er .sha256 %{_builddir}/uke-desktop-extras-integration-1.0.0/work/uke-material-decoration/uke-material-decoration-20261006.094154/inputs/material-decoration/material-decoration-source-lock.json)" cd '%{_builddir}/uke-desktop-extras-integration-1.0.0/work/uke-material-decoration/uke-material-decoration-20261006.094154/work/material-decoration' rm -rf 'material-decoration-0b778253ad6c8eb7fc227bd9d486515c00cdf377' /usr/bin/rpmuncompress -x '%{_builddir}/uke-desktop-extras-integration-1.0.0/work/uke-material-decoration/uke-material-decoration-20261006.094154/inputs/material-decoration/material-decoration-0b778253ad6c8eb7fc227bd9d486515c00cdf377.tar.gz' STATUS=$? if [ $STATUS -ne 0 ]; then exit $STATUS fi cd 'material-decoration-0b778253ad6c8eb7fc227bd9d486515c00cdf377' /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . /usr/bin/rpmuncompress %{_builddir}/uke-desktop-extras-integration-1.0.0/work/uke-material-decoration/uke-material-decoration-20261006.094154/inputs/material-decoration/0001-declare-Qt-Qml-imports.patch | /usr/bin/patch -p1 -s --fuzz=0 --no-backup-if-mismatch -f # KPlugin derives the decoration ID from materialdecoration.so. Upstream's # embedded, differently named ID floods System Settings with warnings. # Keep this conditional on the metadata shape and safe when upstream fixes it. jq 'del(.KPlugin.Id)' src/material.json > src/material.json.new mv src/material.json.new src/material.json ) ) %build ( cd "%{_builddir}/uke-desktop-extras-integration-1.0.0/work/uke-plymonth/uke-plymonth-1.0.2" ) ( cd "%{_builddir}/uke-desktop-extras-integration-1.0.0/work/uke-material-decoration/uke-material-decoration-20261006.094154" ( cd "%{_builddir}/uke-desktop-extras-integration-1.0.0/work/uke-material-decoration/uke-material-decoration-20261006.094154/work/material-decoration/material-decoration-0b778253ad6c8eb7fc227bd9d486515c00cdf377" CFLAGS="${CFLAGS:--O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer }" ; export CFLAGS ; CXXFLAGS="${CXXFLAGS:--O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer }" ; export CXXFLAGS ; FFLAGS="${FFLAGS:--O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules }" ; export FFLAGS ; FCFLAGS="${FCFLAGS:--O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules }" ; export FCFLAGS ; VALAFLAGS="${VALAFLAGS:--g}" ; export VALAFLAGS ; RUSTFLAGS="${RUSTFLAGS:--Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes --cap-lints=warn}" ; export RUSTFLAGS ; LDFLAGS="${LDFLAGS:--Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes }" ; export LDFLAGS ; LT_SYS_LIBRARY_PATH="${LT_SYS_LIBRARY_PATH:-/usr/lib64:}" ; export LT_SYS_LIBRARY_PATH ; CC="${CC:-gcc}" ; export CC ; CXX="${CXX:-g++}" ; export CXX /usr/bin/cmake \ -S "." \ -B "redhat-linux-build" \ -G Ninja \ -DCMAKE_C_FLAGS_RELEASE:STRING="-DNDEBUG" \ -DCMAKE_CXX_FLAGS_RELEASE:STRING="-DNDEBUG" \ -DCMAKE_Fortran_FLAGS_RELEASE:STRING="-DNDEBUG" \ -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \ -DCMAKE_INSTALL_DO_STRIP:BOOL=OFF \ -DCMAKE_INSTALL_PREFIX:PATH=/usr \ -DCMAKE_INSTALL_FULL_SBINDIR:PATH=/usr/bin \ -DCMAKE_INSTALL_SBINDIR:PATH=bin \ -DINCLUDE_INSTALL_DIR:PATH=/usr/include \ -DLIB_INSTALL_DIR:PATH=/usr/lib64 \ -DSYSCONF_INSTALL_DIR:PATH=/etc \ -DSHARE_INSTALL_PREFIX:PATH=/usr/share \ -DLIB_SUFFIX=64 \ -DBUILD_SHARED_LIBS:BOOL=ON -DFORCE_X11=OFF /usr/bin/cmake --build "redhat-linux-build" -j${RPM_BUILD_NCPUS} --verbose ) ) %install ( cd "%{_builddir}/uke-desktop-extras-integration-1.0.0/work/uke-plymonth/uke-plymonth-1.0.2" ( cd "%{_builddir}/uke-desktop-extras-integration-1.0.0/work/uke-plymonth/uke-plymonth-1.0.2/work/uke-plymonth/uke-plymonth-1.0.2" install -d %{buildroot}/usr/share/plymouth/themes/senemos-uke install -m644 src/plymouth-uke/*.png src/plymouth-uke/*.script src/plymouth-uke/*.plymouth %{buildroot}/usr/share/plymouth/themes/senemos-uke/ for item in start:boot poweroff:shutdown reboot:reboot halt:shutdown; do unit=${item%%:*} mode=${item#*:} directory=%{buildroot}/usr/lib/systemd/system/plymouth-$unit.service.d install -d "$directory" cat >"$directory/50-uke-theme.conf" < - 1.0.0-1 - Build reviewed child recipes under one source family without binary repackaging.