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).
113 lines
3.6 KiB
RPMSpec
113 lines
3.6 KiB
RPMSpec
# 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.
|
|
# 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.
|
|
%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: 1%{?dist}
|
|
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
|
|
BuildRequires: cmake
|
|
BuildRequires: gcc-c++
|
|
BuildRequires: qt6-qtbase-devel
|
|
|
|
# upstream name: signond
|
|
Provides: signond = %{version}-%{release}
|
|
|
|
# conflicting implementation: gsignond
|
|
Conflicts: gsignond
|
|
|
|
Requires: dbus
|
|
|
|
Provides: signon = %{version}-%{release}
|
|
Conflicts: signon < %{version}-%{release}
|
|
|
|
%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
|
|
Provides: signon-qt6 = %{version}-%{release}
|
|
Conflicts: signon-qt6 < %{version}-%{release}
|
|
|
|
%description qt6
|
|
%{summary}.
|
|
|
|
%package devel
|
|
Summary: Development files for %{name}
|
|
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
Requires: %{name}-qt6%{?_isa} = %{version}-%{release}
|
|
# upstream name: signond
|
|
Provides: signond-devel = %{version}-%{release}
|
|
Provides: signon-devel = %{version}-%{release}
|
|
Conflicts: signon-devel < %{version}-%{release}
|
|
Provides: signon-qt6-devel = %{version}-%{release}
|
|
Conflicts: signon-qt6-devel < %{version}-%{release}
|
|
|
|
%description devel
|
|
The %{name}-devel package contains libraries and header files for
|
|
developing applications that use %{name}.
|
|
|
|
|
|
%prep
|
|
%autosetup -p1 -n %{reponame}-%{version}
|
|
# 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
|
|
|
|
|
|
%build
|
|
%cmake -DBUILD_SIGNOND:BOOL=ON -DCMAKE_INSTALL_SYSCONFDIR=/etc
|
|
%cmake_build
|
|
|
|
|
|
%install
|
|
%cmake_install
|
|
# create/own libdir/signond/extensions
|
|
mkdir -p %{buildroot}%{_libdir}/signond/extensions/
|
|
|
|
|
|
%files
|
|
%license COPYING
|
|
%config(noreplace) %{_sysconfdir}/signond.conf
|
|
%{_libexecdir}/signond
|
|
%{_libdir}/libsignon-extension.so.0*
|
|
%{_libdir}/libsignon-plugins-common.so.0*
|
|
%{_libdir}/signond/
|
|
%{_datadir}/dbus-1/services/*.service
|
|
|
|
%files qt6
|
|
%{_libdir}/libsignon-qt6.so.0{,.*}
|
|
|
|
%files devel
|
|
%{_includedir}/signon-qt6/
|
|
%{_libdir}/cmake/SignOnQt6/
|
|
%{_libdir}/pkgconfig/libsignon-qt6.pc
|
|
%{_libdir}/libsignon-qt6.so
|
|
%{_libdir}/libsignon-extension.so
|
|
%{_libdir}/libsignon-plugins-common.so
|
|
|
|
%changelog
|
|
* 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
|