SonicDE-rpmspecs/sonic-polkit/sonic-polkit.spec
Anders da Silva Rytter Hansen cc9183c735 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

87 lines
2.8 KiB
RPMSpec

# Generated for SonicDE from Fedora's polkit-qt-1.spec.
# SonicDE is a hard fork of KDE Plasma; the sources come from the
# https://github.com/Sonic-DE/sonic-polkit fork, not from download.kde.org.
# The SonicDE fork is Qt6-only (the upstream CMakeLists hardcodes
# QT_MAJOR_VERSION=6 and requires Qt >= 6.5.0), so this spec no longer
# builds the Qt5 variant that Fedora's polkit-qt-1 shipped.
%define _disable_source_fetch 0
%define debug_package %{nil}
%global reponame sonic-polkit
# Upstream KDE project: polkit-qt-1
%global oldname polkit-qt-1
#Name: polkit-qt-1
Name: sonic-polkit
Version: 0.201.2
Release: 1%{?dist}
Summary: Qt bindings for PolicyKit
License: BSD-3-Clause AND GPL-2.0-or-later AND LGPL-2.0-or-later
#URL: https://api.kde.org/kdesupport-api/polkit-qt-1-apidocs/
URL: https://github.com/Sonic-DE/%{reponame}
#Source0: https://download.kde.org/stable/%%{name}/polkit-qt-1-%%{version}.tar.xz
Source0: %{url}/archive/refs/tags/%{version}.tar.gz#/%{reponame}-%{version}.tar.gz
BuildRequires: cmake
BuildRequires: gcc-c++
BuildRequires: pkgconfig(polkit-agent-1)
BuildRequires: pkgconfig(polkit-gobject-1)
Provides: polkit-qt-1 = %{version}-%{release}
Conflicts: polkit-qt-1 < %{version}-%{release}
%description
Polkit-qt is a library that lets developers use the PolicyKit API
through a nice Qt-styled API.
%package -n polkit-qt6-1
Summary: PolicyKit Qt6 bindings
BuildRequires: pkgconfig(Qt6Core)
BuildRequires: pkgconfig(Qt6DBus)
BuildRequires: pkgconfig(Qt6Gui)
BuildRequires: pkgconfig(Qt6Widgets)
Provides: polkit-qt6-1 = %{version}-%{release}
%description -n polkit-qt6-1
Polkit-qt is a library that lets developers use the PolicyKit API
through a nice Qt-styled API.
%package -n polkit-qt6-1-devel
Summary: Development files for PolicyKit Qt6 bindings
Requires: polkit-qt6-1%{?_isa} = %{version}-%{release}
Provides: polkit-qt6-1-devel = %{version}-%{release}
%description -n polkit-qt6-1-devel
%{summary}.
%prep
%autosetup -p1 -n %{reponame}-%{version}
%build
%cmake -DBUILD_EXAMPLES:BOOL=OFF
%cmake_build
%install
%cmake_install
%files -n polkit-qt6-1
%doc AUTHORS README
%license LICENSES/*
%{_libdir}/libpolkit-qt6-core-1.so.1*
%{_libdir}/libpolkit-qt6-gui-1.so.1*
%{_libdir}/libpolkit-qt6-agent-1.so.1*
%files -n polkit-qt6-1-devel
%{_includedir}/polkit-qt6-1/
%{_libdir}/libpolkit-qt6-core-1.so
%{_libdir}/libpolkit-qt6-gui-1.so
%{_libdir}/libpolkit-qt6-agent-1.so
%{_libdir}/pkgconfig/polkit-qt6-1.pc
%{_libdir}/pkgconfig/polkit-qt6-core-1.pc
%{_libdir}/pkgconfig/polkit-qt6-gui-1.pc
%{_libdir}/pkgconfig/polkit-qt6-agent-1.pc
%{_libdir}/cmake/PolkitQt6-1/
%changelog
* Mon Aug 24 2026 Anders da Silva Rytter Hansen <andersrh@users.noreply.github.com> - 0.201.2-1
- SonicDE hard fork build for Enterprise Linux 10 and Fedora