Name: pocketds Version: 1 Release: 2%{?dist} Summary: Meta packages for the AYANEO Pocket DS Fedora port License: GPL-2.0-or-later URL: https://gitlab.com/linux-pocketds BuildArch: noarch Source0: README.md %global debug_package %{nil} %description Meta-package family for the AYANEO Pocket DS Fedora port. Contains a device-support base and one marker subpackage per desktop profile (KDE Plasma, KDE Plasma Mobile, GNOME, Phosh). The actual desktop package set is chosen at image-build time by mkosi via dnf comps groups (@kde-desktop, @gnome-desktop, @phosh-desktop, @kde-mobile); the profile subpackages here only declare device-side dependencies and serve as a per-image marker so `rpm -q pocketds-` identifies the chosen desktop. # ───────────────────────────────────────────────────────────────────────── # Base — mandatory device support, picked up by every profile. # ───────────────────────────────────────────────────────────────────────── %package base Summary: AYANEO Pocket DS device support (kernel, firmware, ABL, etc.) # kernel ships /boot/Image (boot.img-wrapped) with the embedded busybox # initramfs and the rocknix-patched config. Requires: kernel # Vendor blobs (ADSP, CDSP, GPU, ATH12K WCN7850, etc.). Requires: pocketds-firmware # udev hwdb + InputPlumber capability_map for the AYANEO MCU. Requires: pocketds-userspace # kernel-overlays + first-boot-resize systemd unit. Requires: pocketds-initramfs # ROCKNIX-signed Qualcomm ABL + updateabl. Requires: rocknix-abl # Linux firmware for non-Pocket-DS bits the kernel still touches # (ath12k, wcn7850-bt, qrtr). Requires: linux-firmware # Mesa + Vulkan stack — kept in base because every profile needs it. Requires: mesa-dri-drivers mesa-vulkan-drivers Requires: mesa-libGL mesa-libEGL mesa-libgbm Requires: libdrm vulkan-loader # Audio. Requires: pipewire pipewire-pulseaudio wireplumber alsa-utils # Networking. Requires: NetworkManager NetworkManager-wifi iwd wpa_supplicant # Input layer (composite virtual gamepad). Requires: inputplumber # Calibration UI (analog sticks). Requires: gamepadcalibration # Power. Requires: power-profiles-daemon upower # Bluetooth. Requires: bluez bluez-tools # Anaconda first-boot wizard core. The graphical front-end (GTK or KDE) # is added by the profile subpackage. Requires: initial-setup %description base Device-support base for the AYANEO Pocket DS. Pulls in the rocknix- patched kernel + DTB, vendor firmware, the ROCKNIX-signed ABL, InputPlumber for the MCU gamepad, the analog stick calibration tool, the Mesa/Vulkan stack, audio (PipeWire) and networking (NetworkManager + iwd) bits. Every desktop profile builds on this. # ───────────────────────────────────────────────────────────────────────── # Marker subpackages. Each pulls in pocketds-base + a *minimum* per-DE # add-on; the bulk of the desktop comes from the dnf comps group named # in mkosi.conf. (@kde-desktop, @gnome-desktop, …). # ───────────────────────────────────────────────────────────────────────── %package kde Summary: KDE Plasma desktop profile marker for the Pocket DS Requires: pocketds-base = %{version}-%{release} Conflicts: pocketds-kde-mobile pocketds-gnome pocketds-phosh # Initial-setup graphical front-end (anaconda's GTK build) — picked # up identically by KDE on Fedora KDE Spin. Requires: initial-setup-gui %description kde Marker for the KDE Plasma desktop profile. The Plasma 6 stack itself is installed via the @kde-desktop and @kde-apps comps groups in mkosi.conf.kde — those pull in plasma-workspace, plasma-desktop, kwin, plasma-pa, plasma-nm, dolphin, konsole, kate, the breeze theme, and the Plasma greeter (sddm or plasma-login depending on the Fedora release default). %package kde-mobile Summary: KDE Plasma Mobile profile marker for the Pocket DS Requires: pocketds-base = %{version}-%{release} Conflicts: pocketds-kde pocketds-gnome pocketds-phosh Requires: initial-setup-gui %description kde-mobile Marker for the KDE Plasma Mobile profile. The Plasma Mobile shell is installed via the @kde-mobile and @kde-mobile-apps comps groups in mkosi.conf.kde-mobile. %package gnome Summary: GNOME desktop profile marker for the Pocket DS Requires: pocketds-base = %{version}-%{release} Conflicts: pocketds-kde pocketds-kde-mobile pocketds-phosh # GNOME's own first-boot wizard (replaces anaconda's TUI on graphical # Fedora Workstation). Both can coexist; gnome-initial-setup is # preferred under GDM. Requires: gnome-initial-setup %description gnome Marker for the GNOME desktop profile. The GNOME stack itself is installed via the @gnome-desktop comps group in mkosi.conf.gnome — that pulls in gnome-shell, mutter, gnome-control-center, GDM, and the gnome-* app set. %package phosh Summary: Phosh (mobile-friendly GNOME) profile marker for the Pocket DS Requires: pocketds-base = %{version}-%{release} Conflicts: pocketds-kde pocketds-kde-mobile pocketds-gnome Requires: gnome-initial-setup %description phosh Marker for the Phosh (Phone Shell) profile. The Phosh stack is installed via the @phosh-desktop comps group in mkosi.conf.phosh. %prep %build %install mkdir -p %{buildroot}%{_docdir}/%{name} cp %{SOURCE0} %{buildroot}%{_docdir}/%{name}/ %files base %doc %{_docdir}/%{name}/README.md %files kde %doc %{_docdir}/%{name}/README.md %files kde-mobile %doc %{_docdir}/%{name}/README.md %files gnome %doc %{_docdir}/%{name}/README.md %files phosh %doc %{_docdir}/%{name}/README.md %changelog * Tue May 05 2026 Pocket DS Fedora port - 1-2 - Reshape: profile subpackages are now thin markers; the bulk of each desktop comes from a dnf comps group declared in mkosi.conf.. Stops the spec from carrying brittle long lists of plasma-* / gnome-* package names that drift between Fedora releases. * Tue May 05 2026 Pocket DS Fedora port - 1-1 - Initial pocketds meta-package family.