Build signon-plugin-oauth2 (0.25 git snapshot) and
signon-kwallet-extension (26.04.3) for SonicDE, linking against
sonic-frameworks-sso and sonic-frameworks-keyring.
Update sonic-frameworks-sso to release 9: install plugin development
files (headers, pkgconfig, symlinks, CamelCase forwarding headers)
that the CMake fork doesn't install, needed to build signon plugins.
Generated with [Devin](https://devin.ai)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
The EPEL signon package and sonic-frameworks-sso both install the same
D-Bus service file (/usr/share/dbus-1/services/com.google.code.AccountsSSO.SingleSignOn.service)
and /etc/signond.conf, causing a file conflict that prevents
sonic-frameworks-sso from being installed.
Adding Conflicts: signon tells dnf to remove the EPEL signon daemon
when installing sonic-frameworks-sso (with --allowerasing). The EPEL
signon-qt6 library package (libsignon-qt6.so.1) is NOT conflicted and
can still coexist, since it has a different soname from our .so.0.
EPEL packages signon-plugin-oauth2 and signon-kwallet-extension will
be removed as they require libsignon-*.so.1 from the signon daemon,
but nothing in SonicDE hard-requires them.
Generated with [Devin](https://devin.ai)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Fix 4 errors that occurred when running dnf upgrade --allowerasing on a
system with EPEL KDE packages installed:
1. plasma-discover: Fix typo "sonic-desktop-interface)" -> "sonic-desktop-interface"
in Requires (stray closing parenthesis in spec)
2. sonic-frameworks-sso: Remove Obsoletes for signon and signon-qt6.
The SonicDE SSO package provides libsignon-qt6.so.0 while the EPEL
signon-qt6 provides libsignon-qt6.so.1. Obsoleting signon-qt6 breaks
accounts-qml-module-qt6 and signon-plugin-oauth2 which need .so.1.
Both packages can coexist since they install different .so versions.
3. sonic-terminal-tools: Change kdesu dependency from strict version
match (= 1:6.7.4-3) to >= 1:6.7.4 so it works with any kdesu 6.7.4
release. Also add Obsoletes for kdesu < 1:6.7.4-2.el10 in the kdesu
subpackage so it properly replaces the old EPEL kdesu from kde-cli-tools.
4. kamera: Add kamera package with Requires changed from kde-cli-tools
to sonic-terminal-tools. The EPEL kamera requires kde-cli-tools which
is obsoleted by sonic-terminal-tools, causing a circular dependency
resolution failure.
5. skanpage: Change Requires from kquickimageeditor-qt6 (obsoleted by
sonic-quick-image-editor-qt6) to sonic-quick-image-editor-qt6.
Result: dnf upgrade --allowerasing --best from standard EPEL KDE now
completes with 0 errors and 0 package removals.
Generated with [Devin](https://devin.ai)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Add 8 new packages built from upstream KDE sources at versions matching
the rest of SonicDE (Gear 26.04.3, Plasma 6.7.4):
- colord-kde 26.04.3
- dolphin-plugins 26.04.3
- filelight 26.04.3
- kde-gtk-config 6.7.4
- kde-inotify-survey 26.04.3
- ksanecore 26.04.3 (dependency for skanpage)
- plasma-discover 6.7.4 (with snap backend disabled)
- skanpage 26.04.3
These packages replace the EPEL versions and use SonicDE dependencies
instead of kf6-*/plasma-* packages, ensuring they are upgraded (not
removed) when SonicDE is installed alongside EPEL KDE.
Fix EPEL dependencies in existing SonicDE packages that caused packages
to be removed during dnf upgrade --allowerasing:
- sonic-desktop-interface: kde-cli-tools -> sonic-terminal-tools,
kmenuedit -> sonic-launcher-menu-edit, kwrited -> sonic-write-daemon,
signon-plugin-oauth2 and plasma-systemsettings changed to Recommends
- sonic-workspace: kio-fuse -> sonic-frameworks-io-fuse,
polkit-kde -> sonic-polkit-agent,
xdg-desktop-portal-kde -> xdg-desktop-portal-sonicde,
plasma-keyboard and kde-settings-plasma changed to Recommends
- sonic-workspace-addons: kf6-plasma -> sonic-interface-libraries
- kde-gtk-config: breeze-gtk-common -> sonic-silver-gtk-common
- sonic-login-manager: kde-settings-plasma changed to Recommends
- kcm-soniclogin: plasma-systemsettings changed to Recommends
- sonic-rpm-macros: kde-qdoc-common changed to Recommends
- sonic-welcome-center: add Obsoletes for plasma-welcome
Also includes Obsoletes/Provides fixes across all spec files for proper
EPEL package replacement, and Conflicts tag removal from spec files.
Result: dnf upgrade --allowerasing from standard EPEL KDE removes 0
packages. dnf install of SonicDE packages installs 195 packages with
0 removals.
Generated with [Devin](https://devin.ai)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
The hard-forked specs inherited Fedora's Qt5/KF5 dual-build logic and
upstream naming, but SonicDE is Qt6/KF6-only and renames many install
paths. This resolves every build failure so all 136 packages build
cleanly on AlmaLinux 10 (EPEL10).
Major categories of fixes:
- Qt5/KF5 bcond: force-disable kf5/qt5 in sonic-accounts-integration,
sonic-breeze, sonic-qt-theme-bridge and sonic-crypto-library, since
the forks are Qt6-only and no KF5 packages are shipped.
- %find_lang / %files -f mismatch: 41 specs called %find_lang with the
upstream name but referenced %{name}.lang in %files, so the .lang file
was never found. Aligned %files -f to the same name %find_lang emits.
- Fork-specific install paths: silver/silver-dark icon themes
(sonic-frameworks-silver-icons), Silver GTK theme dir
(sonic-gtk-theme-bridge), and glob-based wallpaper listing
(sonic-workspace-wallpapers) replace the old breeze/hardcoded paths.
- Library SOVERSION globs: sonic-frameworks-quick-ui and
sonic-quick-image-editor shipped %{version} in .so paths, but the
CMake project version differs from the spec version; switched to
SOVERSION globs.
- Distro compatibility: disable HEIF plugin in sonic-frameworks-image-
formats (libheif 1.17 API break), drop missing ffmpeg8 patch from
sonic-pipewire, always build X11 plugin in sonic-frameworks-idle-
tracker, and remove unbuildable kf5-rpm-macros / version-pinned
BuildRequires.
- sonic-frameworks-sso: drop D-Bus interface XML install rule and fix
sysconfdir path.
- sonic-polkit: remove Qt5 build (fork is Qt6-only).