SonicDE-rpmspecs/sonic-frameworks-sso/sonic-frameworks-sso.spec

216 lines
8.5 KiB
RPMSpec
Raw Normal View History

2026-08-25 01:26:42 +02:00
# Generated for SonicDE from Fedora's signon.spec.
# SonicDE is a hard fork of KDE Plasma; the sources come from the
# https://github.com/Sonic-DE/sonic-frameworks-sso fork, not from download.kde.org.
Fix build failures across all 136 SonicDE specs for RHEL 10 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).
2026-08-25 12:14:17 +02:00
# The SonicDE fork has migrated from qmake to CMake and is Qt6-only
# (find_package(Qt6 6.5 ...) in CMakeLists.txt), so this spec uses the
# CMake build system and no longer ships the Qt5 variant.
2026-08-25 01:26:42 +02:00
%define _disable_source_fetch 0
%define debug_package %{nil}
%global reponame sonic-frameworks-sso
# Upstream KDE project: signond
%global oldname signon
#Name: signon
Name: sonic-frameworks-sso
Version: 8.61.2
Release: 9%{?dist}
2026-08-25 01:26:42 +02:00
Summary: Accounts framework for Linux and POSIX based platforms
License: LGPL-2.1-only
#URL: https://gitlab.com/accounts-sso/signond
URL: https://github.com/Sonic-DE/%{reponame}
Source0: %{url}/archive/refs/tags/%{version}.tar.gz#/%{reponame}-%{version}.tar.gz
BuildRequires: make
Fix build failures across all 136 SonicDE specs for RHEL 10 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).
2026-08-25 12:14:17 +02:00
BuildRequires: cmake
2026-08-25 01:26:42 +02:00
BuildRequires: gcc-c++
BuildRequires: qt6-qtbase-devel
# upstream name: signond
Add EPEL apps at latest versions and fix all EPEL dependency conflicts 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>
2026-08-27 17:11:06 +00:00
Provides: signond%{?_isa} = %{version}-%{release}
2026-08-25 01:26:42 +02:00
# conflicting implementation: gsignond
Requires: dbus
Add EPEL apps at latest versions and fix all EPEL dependency conflicts 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>
2026-08-27 17:11:06 +00:00
Provides: signon%{?_isa} = %{version}-%{release}
# The EPEL signon package installs the same D-Bus service file and
# /etc/signond.conf. Our fork has different library sonames (.so.0
# vs EPEL's .so.1), so signon-qt6 can still coexist, but the daemon
# package itself cannot.
Conflicts: signon
2026-08-25 01:26:42 +02:00
%description
Single Sign-On is a framework for centrally storing authentication credentials
and handling authentication on behalf of applications as requested by
applications. It consists of a secure storage of login credentials (for example
usernames and passwords), plugins for different authentication systems and a
client library for applications to communicate with this system.
%package qt6
Summary: Single Sign On client library for Qt6-based applications
Add EPEL apps at latest versions and fix all EPEL dependency conflicts 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>
2026-08-27 17:11:06 +00:00
Provides: signon-qt6%{?_isa} = %{version}-%{release}
2026-08-25 01:26:42 +02:00
%description qt6
%{summary}.
%package devel
Summary: Development files for %{name}
Requires: %{name}%{?_isa} = %{version}-%{release}
Fix build failures across all 136 SonicDE specs for RHEL 10 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).
2026-08-25 12:14:17 +02:00
Requires: %{name}-qt6%{?_isa} = %{version}-%{release}
2026-08-25 01:26:42 +02:00
# upstream name: signond
Add EPEL apps at latest versions and fix all EPEL dependency conflicts 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>
2026-08-27 17:11:06 +00:00
Provides: signond-devel%{?_isa} = %{version}-%{release}
Provides: signon-devel%{?_isa} = %{version}-%{release}
Provides: signon-qt6-devel%{?_isa} = %{version}-%{release}
2026-08-25 01:26:42 +02:00
%description devel
The %{name}-devel package contains libraries and header files for
developing applications that use %{name}.
%prep
%autosetup -p1 -n %{reponame}-%{version}
Fix build failures across all 136 SonicDE specs for RHEL 10 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).
2026-08-25 12:14:17 +02:00
# The fork's CMake tries to install D-Bus interface XML files that are
# not present in the repository. Drop that install rule so the install
# step succeeds; the introspection data is not needed at runtime.
sed -i '/^install(FILES$/,/dbus-1\/interfaces)/d' cmake/signond/CMakeLists.txt
2026-08-25 01:26:42 +02:00
%build
Fix build failures across all 136 SonicDE specs for RHEL 10 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).
2026-08-25 12:14:17 +02:00
%cmake -DBUILD_SIGNOND:BOOL=ON -DCMAKE_INSTALL_SYSCONFDIR=/etc
%cmake_build
2026-08-25 01:26:42 +02:00
%install
Fix build failures across all 136 SonicDE specs for RHEL 10 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).
2026-08-25 12:14:17 +02:00
%cmake_install
# create/own libdir/signond/extensions
mkdir -p %{buildroot}%{_libdir}/signond/extensions/
2026-08-25 01:26:42 +02:00
# Install plugin development files (CMake fork doesn't install these)
# Plugin headers
mkdir -p %{buildroot}%{_includedir}/signon-plugins/SignOn
cp -a %{_builddir}/%{reponame}-%{version}/lib/plugins/SignOn/*.h \
%{buildroot}%{_includedir}/signon-plugins/SignOn/
cp -a %{_builddir}/%{reponame}-%{version}/lib/plugins/*.h \
%{buildroot}%{_includedir}/signon-plugins/ 2>/dev/null || true
cp -a %{_builddir}/%{reponame}-%{version}/src/plugins/example/exampledata.h \
%{buildroot}%{_includedir}/signon-plugins/ 2>/dev/null || true
cp -a %{_builddir}/%{reponame}-%{version}/src/plugins/example/exampleplugin.h \
%{buildroot}%{_includedir}/signon-plugins/ 2>/dev/null || true
cp -a %{_builddir}/%{reponame}-%{version}/src/plugins/password/passwordplugin.h \
%{buildroot}%{_includedir}/signon-plugins/ 2>/dev/null || true
# Create CamelCase forwarding headers (upstream plugins use #include <SignOn/AuthPluginInterface>)
# AuthPluginInterface -> authpluginif.h (note: not authplugininterface.h)
echo "#include <SignOn/authpluginif.h>" > %{buildroot}%{_includedir}/signon-plugins/SignOn/AuthPluginInterface
echo "#include <SignOn/uisessiondata.h>" > %{buildroot}%{_includedir}/signon-plugins/SignOn/UiSessionData
# Error and SessionData are in signon-qt6, but plugins include them via SignOn/
# Create forwarding headers that point to the qt6 versions
echo "#include <SignOn/signonerror.h>" > %{buildroot}%{_includedir}/signon-plugins/SignOn/Error
echo "#include <SignOn/sessiondata.h>" > %{buildroot}%{_includedir}/signon-plugins/SignOn/SessionData
# Copy the actual qt6 headers that plugins need (signonerror.h, sessiondata.h, libsignoncommon.h)
# since the forwarding headers above include them from SignOn/ which resolves
# to signon-plugins/SignOn/
cp -a %{buildroot}%{_includedir}/signon-qt6/SignOn/signonerror.h \
%{buildroot}%{_includedir}/signon-plugins/SignOn/ 2>/dev/null || true
cp -a %{buildroot}%{_includedir}/signon-qt6/SignOn/sessiondata.h \
%{buildroot}%{_includedir}/signon-plugins/SignOn/ 2>/dev/null || true
cp -a %{buildroot}%{_includedir}/signon-qt6/SignOn/libsignoncommon.h \
%{buildroot}%{_includedir}/signon-plugins/SignOn/ 2>/dev/null || true
# Extension headers
mkdir -p %{buildroot}%{_includedir}/signon-extension/SignOn
cp -a %{_builddir}/%{reponame}-%{version}/lib/signond/SignOn/*.h \
%{buildroot}%{_includedir}/signon-extension/SignOn/
# signond internal headers (needed by some plugins)
mkdir -p %{buildroot}%{_includedir}/signond
cp -a %{_builddir}/%{reponame}-%{version}/src/signond/*.h \
%{buildroot}%{_includedir}/signond/ 2>/dev/null || true
# Create pkgconfig files (the .pc.in templates use qmake $$ syntax, not CMake)
cat > %{buildroot}%{_libdir}/pkgconfig/signon-plugins.pc << 'PCEOF'
prefix=/usr
exec_prefix=${prefix}
libdir=${exec_prefix}/%{_lib}
includedir=${prefix}/include
plugin_includedir=${includedir}/signon-plugins/SignOn
plugindir=${libdir}/signond
Name: signon-plugins
Description: SignonPlugins
Version: %{version}
Libs: -L${libdir} -lsignon-plugins-common
Cflags: -I${includedir}/signon-plugins -I${includedir}/signon-plugins/SignOn
PCEOF
cat > %{buildroot}%{_libdir}/pkgconfig/SignOnExtension.pc << 'PCEOF'
prefix=/usr
exec_prefix=${prefix}
libdir=${exec_prefix}/%{_lib}
includedir=${prefix}/include
plugindir=${libdir}/signond/extensions
Name: SignOnExtension
Description: SignOn extension development
Version: %{version}
Requires: Qt6Core
Libs: -L${libdir} -lsignon-extension
Cflags: -I${includedir}/signon-extension
PCEOF
cat > %{buildroot}%{_libdir}/pkgconfig/signon-plugins-common.pc << 'PCEOF'
prefix=/usr
exec_prefix=${prefix}
libdir=${exec_prefix}/%{_lib}
includedir=${prefix}/include
plugin_includedir=${includedir}/signon-plugins/SignOn
Name: signon-plugins-common
Description: SignonPluginsCommon
Version: %{version}
Libs: -L${libdir} -lsignon-plugins-common
Cflags: -I${includedir}/signon-plugins -I${includedir}/signon-plugins/SignOn
PCEOF
# Create libsignon-plugins.so symlink (plugins link against this)
ln -sf libsignon-plugins-common.so %{buildroot}%{_libdir}/libsignon-plugins.so
2026-08-25 01:26:42 +02:00
%files
%license COPYING
%config(noreplace) %{_sysconfdir}/signond.conf
Fix build failures across all 136 SonicDE specs for RHEL 10 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).
2026-08-25 12:14:17 +02:00
%{_libexecdir}/signond
%{_libdir}/libsignon-extension.so.0*
%{_libdir}/libsignon-plugins-common.so.0*
%{_libdir}/signond/
2026-08-25 01:26:42 +02:00
%{_datadir}/dbus-1/services/*.service
%files qt6
Fix build failures across all 136 SonicDE specs for RHEL 10 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).
2026-08-25 12:14:17 +02:00
%{_libdir}/libsignon-qt6.so.0{,.*}
2026-08-25 01:26:42 +02:00
%files devel
%{_includedir}/signon-qt6/
%{_includedir}/signon-plugins/
%{_includedir}/signon-extension/
%{_includedir}/signond/
2026-08-25 01:26:42 +02:00
%{_libdir}/cmake/SignOnQt6/
%{_libdir}/pkgconfig/libsignon-qt6.pc
%{_libdir}/pkgconfig/signon-plugins.pc
%{_libdir}/pkgconfig/SignOnExtension.pc
%{_libdir}/pkgconfig/signon-plugins-common.pc
2026-08-25 01:26:42 +02:00
%{_libdir}/libsignon-qt6.so
Fix build failures across all 136 SonicDE specs for RHEL 10 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).
2026-08-25 12:14:17 +02:00
%{_libdir}/libsignon-extension.so
%{_libdir}/libsignon-plugins-common.so
%{_libdir}/libsignon-plugins.so
2026-08-25 01:26:42 +02:00
%changelog
* Fri Aug 28 2026 SonicDE <dev@sonicde.org> - 8.61.2-9
- Fix forwarding headers: AuthPluginInterface->authpluginif.h, add libsignoncommon.h
* Fri Aug 28 2026 SonicDE <dev@sonicde.org> - 8.61.2-8
- Add CamelCase forwarding headers and qt6 headers for plugin builds
* Fri Aug 28 2026 SonicDE <dev@sonicde.org> - 8.61.2-7
- Install plugin development files (headers, pkgconfig, symlinks) needed
to build signon-plugin-oauth2 and signon-kwallet-extension against SSO
* Thu Aug 27 2026 SonicDE <dev@sonicde.org> - 8.61.2-6
- Add Conflicts: signon to prevent D-Bus service file clash with EPEL signon
2026-08-25 01:26:42 +02:00
* Mon Aug 24 2026 Anders da Silva Rytter Hansen <andersrh@users.noreply.github.com> - 8.61.2-1
- SonicDE hard fork build for Enterprise Linux 10 and Fedora