SonicDE-rpmspecs/sonic-terminal-tools/sonic-terminal-tools.spec

129 lines
3.9 KiB
RPMSpec
Raw Normal View History

2026-08-25 01:26:42 +02:00
# Generated for SonicDE from Fedora's kde-cli-tools.spec.
# SonicDE is a hard fork of KDE Plasma; the sources come from the
# https://github.com/Sonic-DE/sonic-terminal-tools fork, not from download.kde.org.
%define _disable_source_fetch 0
%define debug_package %{nil}
%global reponame sonic-terminal-tools
# Upstream KDE project: kde-cli-tools
%global oldname kde-cli-tools
#Name: kde-cli-tools
Name: sonic-terminal-tools
Version: 6.7.4
Fix dnf upgrade --allowerasing errors with EPEL packages 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>
2026-08-27 17:49:20 +00:00
Release: 4%{?dist}
2026-08-25 01:26:42 +02:00
Summary: Tools based on KDE Frameworks 5 to better interact with the system
License: Artistic-2.0 AND GPL-2.0-only AND GPL-2.0-or-later AND GPL-3.0-only AND LGPL-2.0-only AND LGPL-2.0-or-later AND LGPL-2.1-only AND LGPL-2.1-only AND LGPL-3.0-only AND (GPL-2.0-only OR GPL-3.0-only) AND (LGPL-2.1-only OR LGPL-3.0-only)
#URL: https://invent.kde.org/plasma/%%{name}
URL: https://github.com/Sonic-DE/%{reponame}
#Source0: https://download.kde.org/%%{stable_kf6}/plasma/%%{version}/%%{name}-%%{version}.tar.xz
Source0: %{url}/archive/refs/tags/%{version}.tar.gz#/%{reponame}-%{version}.tar.gz
#Source1: https://download.kde.org/%%{stable_kf6}/plasma/%%{version}/%%{name}-%%{version}.tar.xz.sig
## upstream patches
BuildRequires: qt6-qtbase-devel
BuildRequires: qt6-qtbase-private-devel
BuildRequires: cmake(Qt6Qml)
BuildRequires: cmake(Qt6Svg)
BuildRequires: sonic-rpm-macros
BuildRequires: sonic-frameworks-cmake-modules
BuildRequires: cmake(KF6Config)
BuildRequires: cmake(KF6DocTools)
BuildRequires: cmake(KF6IconThemes)
BuildRequires: cmake(KF6I18n)
BuildRequires: cmake(KF6KCMUtils)
BuildRequires: cmake(KF6Su)
BuildRequires: cmake(KF6KIO)
BuildRequires: cmake(KF6WindowSystem)
BuildRequires: cmake(KF6Parts)
BuildRequires: cmake(KF6XmlGui)
BuildRequires: cmake(KF6GuiAddons)
BuildRequires: sonic-workspace-devel >= %{version}
Requires: sonic-workspace-libs%{?_isa} >= %{version}
# upgrade path, from when this wasn't split out
Fix dnf upgrade --allowerasing errors with EPEL packages 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>
2026-08-27 17:49:20 +00:00
Requires: kdesu >= 1:%{version}
2026-08-25 01:26:42 +02:00
# unversioned utilitized landed here in 5.23.90, see also
# https://phabricator.kde.org/T14763
# https://invent.kde.org/plasma/kde-cli-tools/-/merge_requests/23
Conflicts: kde-runtime < 17.08.3-23
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: kde-cli-tools%{?_isa} = %{version}-%{release}
Obsoletes: kde-cli-tools < %{version}-%{release}
2026-08-25 01:26:42 +02:00
%description
Provides several KDE and Plasma specific command line tools to allow
better interaction with the system.
%package -n kdesu
Summary: Runs a program with elevated privileges
Epoch: 1
Conflicts: kde-runtime < 14.12.3-2
Conflicts: kde-runtime-docs < 14.12.3-2
Fix dnf upgrade --allowerasing errors with EPEL packages 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>
2026-08-27 17:49:20 +00:00
Obsoletes: kdesu < 1:6.7.4-2.el10
2026-08-25 01:26:42 +02:00
%description -n kdesu
%{summary}.
%prep
%autosetup -p1 -n %{reponame}-%{version}
%build
%cmake_kf6
%cmake_build
%install
%cmake_install
%find_lang kdeclitools_qt --with-qt --with-kde --all-name
ln -s %{_kf6_libexecdir}/kdesu %{buildroot}%{_bindir}/kdesu
%files -f kdeclitools_qt.lang
%{_bindir}/kbroadcastnotification
%{_bindir}/kdecp
%{_bindir}/kdecp5
%{_bindir}/kde-inhibit
%{_bindir}/kdemv
%{_bindir}/kdemv5
%{_bindir}/kde-open
%{_bindir}/kde-open5
%{_bindir}/keditfiletype
%{_bindir}/keditfiletype5
%{_bindir}/kinfo
%{_bindir}/kioclient
%{_bindir}/kioclient5
%{_bindir}/kmimetypefinder
%{_bindir}/kmimetypefinder5
%{_bindir}/kstart
%{_bindir}/kstart5
%{_bindir}/ksvgtopng
%{_bindir}/ksvgtopng5
%{_bindir}/plasma-open-settings
%{_kf6_libexecdir}/kdeeject
%{_kf6_qtplugindir}/plasma/kcms/systemsettings_qwidgets/kcm_filetypes.so
%{_datadir}/doc/HTML/*/kcontrol6
%{_datadir}/applications/org.kde.keditfiletype.desktop
%{_datadir}/applications/org.kde.plasma.settings.open.desktop
%{_datadir}/applications/kcm_filetypes.desktop
%{_datadir}/zsh/site-functions/_kde-inhibit
%files -n kdesu
%{_bindir}/kdesu
%{_kf6_libexecdir}/kdesu
%{_mandir}/man1/kdesu.1.gz
%{_mandir}/*/man1/kdesu.1.gz
## FIXME: %%lang'ify
%{_datadir}/doc/HTML/*/kdesu
%changelog
* Mon Aug 24 2026 Anders da Silva Rytter Hansen <andersrh@users.noreply.github.com> - 6.7.4-1
- SonicDE hard fork build for Enterprise Linux 10 and Fedora