%global debug_package %{nil} Name: nabu-repository-config Version: 1.0.0 Release: 22.test%{?dist} Summary: COPR repository definition and desktop profiles for Nabu Linux License: MIT AND GPL-2.0-or-later URL: https://copr.fedorainfracloud.org/coprs/mcc45tr/nabu-linux/ Source0: nabu-linux-copr.repo Source1: 90-nabu-disable-cisco-openh264.repo Source2: plasma-mobile.desktop Source3: 20-nabu-mobile-session.conf Source4: 90-nabu-mobile-login.conf Source5: 95-nabu-plasma-mobile.preset Source6: DESKTOP-PROFILE-MIGRATION.md BuildArch: noarch BuildRequires: systemd-rpm-macros %description Installs the signed Nabu Linux COPR definition and selects the matching Fedora release automatically. The repository publishes the Nabu hardware stack and mutually exclusive desktop profiles for Fedora 43, 44, 45 and Rawhide on AArch64; Fedora remains the source for general-purpose dependencies. %package -n nabu-meta Summary: Core operating-system and hardware stack for Nabu Requires: nabu-repository-config = %{version}-%{release} Requires: senemos-nabu-kernel Requires: nabu-boot-integration >= 2.0.0 Requires: nabu-boot-manager Requires: nabu-system-integration >= 2.0.0-5.test Requires: hexagonrpc-nabu Requires: libssc-nabu Requires: python3-ssc-nabu Requires: iio-sensor-proxy-nabu Requires: senemos-nabu-plymouth >= 1.0.0-5.test %description -n nabu-meta Coherent base profile for a Fedora installation on Xiaomi Pad 5 (nabu). It brings together the Nabu kernel, boot integration, device policy, audio and sensor userspace. Proprietary device firmware is never redistributed and must be supplied from an authorized source. %package -n nabu-plasma-base Summary: KDE Plasma desktop session foundation for Nabu Requires: nabu-meta = %{version}-%{release} Requires: nabu-kde-config >= 1.4.0.1-11.test Requires: glibc-all-langpacks Recommends: nabu-language-support >= 1.1.0-1.test Recommends: nabu-kde-l10n >= 1.1.0-1.test Recommends: nabu-plasma-setup-l10n >= 1.1.0-1.test Requires: nabu-kde-widgets Requires: plasma-workspace Requires: plasma-desktop Requires: kwin Requires: kscreen Requires: sddm Requires: sddm-wayland-plasma Requires: plasma-systemsettings Requires: plasma-nm Requires: plasma-pa Requires: plasma-keyboard Requires: bluedevil Requires: maliit-framework Requires: maliit-keyboard Requires: plasma-setup(aarch-64) Conflicts: nabu-plasma-mobile-setup Conflicts: kcm_wacomtablet Provides: nabu-desktop-session = %{version}-%{release} Conflicts: nabu-desktop-session Obsoletes: nabu-kde-meta < %{version}-%{release} Provides: nabu-kde-meta = %{version}-%{release} %description -n nabu-plasma-base Stock Fedora KDE Plasma desktop, SDDM and Nabu integration foundation. No KDE or Fedora application is forked or replaced. %package -n nabu-gnome-base Summary: GNOME session foundation for Nabu Requires: nabu-meta = %{version}-%{release} Requires: glibc-all-langpacks Recommends: nabu-language-support >= 1.1.0-1.test Requires: gnome-shell Requires: gnome-session Requires: gdm Requires: gnome-control-center Requires: gnome-initial-setup Requires: mutter Requires: gnome-settings-daemon Provides: nabu-desktop-session = %{version}-%{release} Conflicts: nabu-desktop-session %description -n nabu-gnome-base Stock Fedora GNOME session, display manager and settings foundation for Nabu. %package -n nabu-gnome-mobile-base Summary: Touch-oriented GNOME session foundation for Nabu Requires: nabu-meta = %{version}-%{release} Requires: glibc-all-langpacks Recommends: nabu-language-support >= 1.1.0-1.test Requires: gnome-shell Requires: gnome-session Requires: gdm Requires: gnome-control-center Requires: gnome-initial-setup Requires: gnome-settings-daemon Requires: mutter Provides: nabu-desktop-session = %{version}-%{release} Conflicts: nabu-desktop-session %description -n nabu-gnome-mobile-base Touch-oriented profile built on stock Fedora GNOME. Fedora does not ship a separate GNOME Shell Mobile session, so no downstream shell patches are used. %package -n nabu-posh-base Summary: Phosh mobile session foundation for Nabu Requires: nabu-meta = %{version}-%{release} Requires: glibc-all-langpacks Recommends: nabu-language-support >= 1.1.0-1.test Requires: phosh Requires: phosh-mobile-settings Requires: gnome-session Requires: gdm Requires: gnome-control-center Requires: gnome-settings-daemon Provides: nabu-desktop-session = %{version}-%{release} Conflicts: nabu-desktop-session %description -n nabu-posh-base Fedora Phosh session and GNOME settings foundation. The package uses the requested "posh" spelling while the installed shell is Phosh. %package -n nabu-gnome-minimal-meta Summary: Minimal GNOME profile for Nabu Requires: nabu-gnome-base = %{version}-%{release} Requires: gnome-software Requires: gnome-console Provides: nabu-desktop-profile-meta = %{version}-%{release} Conflicts: nabu-desktop-profile-meta %description -n nabu-gnome-minimal-meta GNOME with only GNOME Software and GNOME Console added to the session base. %package -n nabu-gnome-optimal-meta Summary: Optimal GNOME tablet profile for Nabu Requires: nabu-gnome-base = %{version}-%{release} Requires: gnome-software Requires: gnome-console Requires: nautilus Requires: firefox Requires: loupe Requires: gnome-weather Requires: gnome-clocks Requires: gnome-calculator Requires: gnome-text-editor Requires: totem Requires: papers Requires: file-roller Requires: nano Requires: fastfetch Provides: nabu-desktop-profile-meta = %{version}-%{release} Conflicts: nabu-desktop-profile-meta Obsoletes: nabu-gnome-meta < %{version}-%{release} Provides: nabu-gnome-meta = %{version}-%{release} %description -n nabu-gnome-optimal-meta GNOME-native or desktop-neutral apps matching the Plasma optimal coverage. %package -n nabu-gnome-mobile-minimal-meta Summary: Minimal touch-oriented GNOME profile for Nabu Requires: nabu-gnome-mobile-base = %{version}-%{release} Requires: gnome-software Requires: gnome-console Provides: nabu-desktop-profile-meta = %{version}-%{release} Conflicts: nabu-desktop-profile-meta %description -n nabu-gnome-mobile-minimal-meta Touch-oriented stock GNOME with only GNOME Software and GNOME Console. %package -n nabu-gnome-mobile-optimal-meta Summary: Optimal touch-oriented GNOME profile for Nabu Requires: nabu-gnome-mobile-base = %{version}-%{release} Requires: gnome-software Requires: gnome-console Requires: nautilus Requires: firefox Requires: loupe Requires: gnome-weather Requires: gnome-clocks Requires: gnome-calculator Requires: gnome-text-editor Requires: totem Requires: papers Requires: file-roller Requires: nano Requires: fastfetch Provides: nabu-desktop-profile-meta = %{version}-%{release} Conflicts: nabu-desktop-profile-meta %description -n nabu-gnome-mobile-optimal-meta Touch-oriented stock GNOME with the provisional GNOME/Posh optimal app set. %package -n nabu-posh-minimal-meta Summary: Minimal Phosh profile for Nabu Requires: nabu-posh-base = %{version}-%{release} Requires: gnome-software Requires: gnome-console Provides: nabu-desktop-profile-meta = %{version}-%{release} Conflicts: nabu-desktop-profile-meta %description -n nabu-posh-minimal-meta Phosh with only GNOME Software and GNOME Console added to the session base. %package -n nabu-posh-optimal-meta Summary: Optimal Phosh tablet profile for Nabu Requires: nabu-posh-base = %{version}-%{release} Requires: gnome-software Requires: gnome-console Requires: nautilus Requires: firefox Requires: loupe Requires: gnome-weather Requires: gnome-clocks Requires: gnome-calculator Requires: gnome-text-editor Requires: totem Requires: papers Requires: file-roller Requires: nano Requires: fastfetch Provides: nabu-desktop-profile-meta = %{version}-%{release} Conflicts: nabu-desktop-profile-meta %description -n nabu-posh-optimal-meta Phosh with the same provisional optimal application coverage as GNOME. %package -n nabu-plasma-minimal-meta Summary: Minimal KDE Plasma desktop profile for Nabu Requires: nabu-plasma-base = %{version}-%{release} Requires: plasma-discover Requires: plasma-discover-packagekit Requires: PackageKit Requires: konsole Provides: nabu-desktop-profile-meta = %{version}-%{release} Conflicts: nabu-desktop-profile-meta Obsoletes: nabu-kde-plasma-minimal < %{version}-%{release} Provides: nabu-kde-plasma-minimal = %{version}-%{release} %description -n nabu-plasma-minimal-meta Plasma with only Discover and Konsole added to the session base. %package -n nabu-plasma-optimal-meta Summary: Optimal KDE Plasma desktop profile for Nabu Requires: nabu-plasma-base = %{version}-%{release} Requires: plasma-discover Requires: plasma-discover-packagekit Requires: PackageKit Requires: konsole Requires: dolphin Requires: kde-connect Requires: ark Requires: gwenview Requires: okular Requires: system-config-printer Requires: kwalletmanager5 Requires: plasma-milou Requires: kate Requires: kwrite Requires: nano Requires: fastfetch Requires: plasma-systemmonitor Provides: nabu-desktop-profile-meta = %{version}-%{release} Conflicts: nabu-desktop-profile-meta Obsoletes: nabu-kde-plasma-optimal < %{version}-%{release} Obsoletes: nabu-kde-plasma-full < %{version}-%{release} Provides: nabu-kde-plasma-optimal = %{version}-%{release} Provides: nabu-kde-plasma-full = %{version}-%{release} %description -n nabu-plasma-optimal-meta The previously qualified Nabu Plasma optimal set using stock Fedora/KDE apps. %package -n nabu-kde-mobile-base Summary: KDE Plasma Mobile session foundation for Nabu Requires: nabu-meta = %{version}-%{release} Requires: nabu-system-integration >= 2.0.0-5.test Requires: nabu-kde-config >= 1.4.0.1-6.test Requires: glibc-all-langpacks Recommends: nabu-language-support >= 1.1.0-1.test Recommends: nabu-kde-l10n >= 1.1.0-1.test Requires: plasma-workspace Requires: plasma-mobile Requires: plasma-mobile-sounds Requires: plasma-login-manager Requires: kde-settings-plasmalogin Requires: plasma-settings Requires: kwin Requires: kscreen Requires: kscreenlocker Requires: powerdevil Requires: plasma-nm Requires: plasma-pa Requires: plasma-keyboard Requires: bluedevil Requires: NetworkManager Requires: mesa-dri-drivers Requires: mesa-vulkan-drivers Requires: mesa-libEGL Requires: libglvnd-egl Requires: libglvnd-gles Requires: libglvnd-glx Requires: xorg-x11-server-Xwayland Requires: openssh-clients Requires: openssh-server Conflicts: nabu-plasma-mobile-setup Conflicts: sddm Conflicts: sddm-wayland-plasma Conflicts: plasma-setup Conflicts: plasma-desktop Provides: plasmashell Obsoletes: plasma-desktop < 7 Obsoletes: nabu-plasma-mobile-setup < 1:6.7.4-1.nabu3 Obsoletes: nabu-kde-plasma-mobile-base < %{version}-%{release} Provides: nabu-kde-plasma-mobile-base = %{version}-%{release} Provides: nabu-desktop-session = %{version}-%{release} Conflicts: nabu-desktop-session %description -n nabu-kde-mobile-base Nabu's Plasma Mobile shell and Plasma Login Manager stack, exposing only the packaged Plasma Mobile Wayland session. %package -n nabu-kde-mobile-minimal-meta Summary: Minimal KDE Plasma Mobile profile for Nabu Requires: nabu-kde-mobile-base = %{version}-%{release} Requires: plasma-discover Requires: plasma-discover-packagekit Requires: PackageKit Requires: qmlkonsole Provides: nabu-desktop-profile-meta = %{version}-%{release} Conflicts: nabu-desktop-profile-meta Obsoletes: nabu-kde-plasma-mobile-minimal < %{version}-%{release} Provides: nabu-kde-plasma-mobile-minimal = %{version}-%{release} %description -n nabu-kde-mobile-minimal-meta Plasma Mobile with only Discover and QMLKonsole added to the session base. %package -n nabu-kde-mobile-optimal-meta Summary: Optimal KDE Plasma Mobile profile for Nabu Requires: nabu-kde-mobile-base = %{version}-%{release} Requires: plasma-discover Requires: plasma-discover-notifier Requires: plasma-discover-packagekit Requires: PackageKit Requires: qmlkonsole Requires: dolphin Requires: angelfish Requires: koko Requires: kweather Requires: kclock Requires: kalk Requires: elisa-player Requires: kde-connect Requires: okular-mobile Requires: chromium Requires: nano Requires: fastfetch Provides: nabu-desktop-profile-meta = %{version}-%{release} Conflicts: nabu-desktop-profile-meta Obsoletes: nabu-kde-plasma-mobile < %{version}-%{release} Obsoletes: nabu-kde-plasma-mobile-optimal < %{version}-%{release} Provides: nabu-kde-plasma-mobile = %{version}-%{release} Provides: nabu-kde-plasma-mobile-optimal = %{version}-%{release} %description -n nabu-kde-mobile-optimal-meta Discover, QMLKonsole, Angelfish, Chromium, Dolphin, Koko, Kalk, KClock, KWeather, Elisa, Okular Mobile, KDE Connect, Nano and Fastfetch. %prep %build %install install -Dm0644 %{SOURCE0} %{buildroot}%{_sysconfdir}/yum.repos.d/nabu-linux-copr.repo install -Dm0644 %{SOURCE1} %{buildroot}%{_sysconfdir}/dnf/repos.override.d/90-nabu-disable-cisco-openh264.repo install -Dm0644 %{SOURCE2} %{buildroot}%{_datadir}/nabu-plasma-mobile/wayland-sessions/plasma-mobile.desktop install -Dm0644 %{SOURCE3} %{buildroot}%{_unitdir}/plasmalogin.service.d/20-nabu-mobile-session.conf install -Dm0644 %{SOURCE4} %{buildroot}%{_prefix}/lib/plasmalogin/plasmalogin.conf.d/90-nabu-mobile-login.conf install -Dm0644 %{SOURCE5} %{buildroot}%{_presetdir}/95-nabu-plasma-mobile.preset install -Dm0644 %{SOURCE6} %{buildroot}%{_docdir}/nabu-repository-config/DESKTOP-PROFILE-MIGRATION.md install -d %{buildroot}%{_datadir}/nabu-plasma-mobile/xsessions %files %config(noreplace) %{_sysconfdir}/yum.repos.d/nabu-linux-copr.repo %config(noreplace) %{_sysconfdir}/dnf/repos.override.d/90-nabu-disable-cisco-openh264.repo %doc %{_docdir}/nabu-repository-config/DESKTOP-PROFILE-MIGRATION.md %files -n nabu-meta %files -n nabu-gnome-base %files -n nabu-gnome-mobile-base %files -n nabu-posh-base %files -n nabu-plasma-base %files -n nabu-kde-mobile-base %dir %{_datadir}/nabu-plasma-mobile %dir %{_datadir}/nabu-plasma-mobile/wayland-sessions %{_datadir}/nabu-plasma-mobile/wayland-sessions/plasma-mobile.desktop %dir %{_datadir}/nabu-plasma-mobile/xsessions %dir %{_unitdir}/plasmalogin.service.d %{_unitdir}/plasmalogin.service.d/20-nabu-mobile-session.conf %dir %{_prefix}/lib/plasmalogin %dir %{_prefix}/lib/plasmalogin/plasmalogin.conf.d %{_prefix}/lib/plasmalogin/plasmalogin.conf.d/90-nabu-mobile-login.conf %{_presetdir}/95-nabu-plasma-mobile.preset %post -n nabu-kde-mobile-base %systemd_post plasmalogin.service if [ -x /usr/bin/systemctl ]; then /usr/bin/systemctl disable sddm.service >/dev/null 2>&1 || : /usr/bin/systemctl disable plasma-setup.service >/dev/null 2>&1 || : /usr/bin/systemctl enable --force plasmalogin.service >/dev/null 2>&1 || : /usr/bin/systemctl enable sshd.service >/dev/null 2>&1 || : fi %preun -n nabu-kde-mobile-base %systemd_preun plasmalogin.service %postun -n nabu-kde-mobile-base %systemd_postun_with_restart plasmalogin.service %files -n nabu-gnome-minimal-meta %files -n nabu-gnome-optimal-meta %files -n nabu-gnome-mobile-minimal-meta %files -n nabu-gnome-mobile-optimal-meta %files -n nabu-posh-minimal-meta %files -n nabu-posh-optimal-meta %files -n nabu-plasma-minimal-meta %files -n nabu-plasma-optimal-meta %files -n nabu-kde-mobile-minimal-meta %files -n nabu-kde-mobile-optimal-meta %changelog * Wed Aug 26 2026 MCC45TR - 1.0.0-22.test - Publish minimal and optimal -meta packages for GNOME, touch-oriented GNOME, Posh/Phosh, Plasma and KDE Mobile. - Enforce exactly one desktop session and one user-facing profile with shared mutually conflicting virtual capabilities. - Limit minimal profiles to the matching software store and terminal and map legacy GNOME, Plasma and Plasma Mobile names to their new equivalents. * Sun Aug 23 2026 MCC45TR - 1.0.0-14.test - Keep Fedora's plasma-desktop package as the plasmashell provider required by plasma-workspace; the Plasma Login Manager mount namespace still exposes only the packaged Plasma Mobile session. * Sun Aug 23 2026 MCC45TR - 1.0.0-13.test - Require the integrated v1.4.0.3 kernel meta package by its published name. * Sun Aug 23 2026 MCC45TR - 1.0.0-12.test - Add integrated Plasma Mobile common, minimal and optimal profiles. - Replace SDDM with Plasma Login Manager and isolate its session directory so the greeter exposes only Plasma Mobile while Plasma Setup remains a separate first-boot service. - Use Index, KDE Photos, KWrite and QMLKonsole in the minimal profile. - Retain Dolphin in the optimal profile and add Angelfish, KDE Photos, KWeather, KClock, Kalk, QMLKonsole and Elisa. - Require the v1.4.0.3 Nabu kernel family. * Sun Aug 23 2026 MCC45TR - 1.0.0-11.test - Select the matching Fedora COPR repository path for Fedora 43, 44, 45 and Rawhide instead of hard-coding Rawhide. - Clarify the Nabu hardware, desktop-profile and firmware boundaries. * Sat Aug 22 2026 MCC45TR - 1.0.0-10.test - Disable Fedora's Cisco OpenH264 repository through the supported DNF5 repo override mechanism because its Rawhide metadata currently serves an fc45 package that cannot be verified with the Fedora 46 signing key. * Sat Aug 22 2026 MCC45TR - 1.0.0-9.test - Keep the native Nabu Plymouth theme in every supported desktop profile. - Require the localization payload that restores the Plasma Shell catalogs used by Plasma Setup's language selector. * Sat Aug 22 2026 MCC45TR - 1.0.0-8.test - Require the current v1.4.0.2 Nabu kernel family instead of the obsolete v1.21 package names. - Keep KDE profiles on Fedora's stock KWin through the integration package. * Sat Aug 15 2026 MCC45TR - 1.0.0-7.test - Require complete Plasma Setup language catalogs and the sensor-start FOTA * Sat Aug 15 2026 MCC45TR - 1.0.0-6.test - Add the shared Nabu core hardware meta package and link desktop profiles to it * Sat Aug 15 2026 MCC45TR - 1.0.0-5.test - Keep Plasma's required libwacom runtime while omitting the Wacom settings KCM * Sat Aug 15 2026 MCC45TR - 1.0.0-4.test - Decouple the KDE integration EVR from this repository/meta source package. * Sat Aug 15 2026 MCC45TR - 1.0.0-2 - Publish one test repository definition and desktop-neutral profile names.