This commit is contained in:
2026-02-09 11:38:33 +08:00
parent 99a2b7b565
commit 67796c41a1
19 changed files with 1883 additions and 0 deletions

View File

@@ -0,0 +1,96 @@
%define kf6_version 6.19.0
%define qt6_version 6.9.0
Name: kaccounts-integration
Version: 25.12.2
Release: 0
Summary: KDE Accounts Providers
License: GPL-2.0-or-later
Source0: https://download.kde.org/stable/release-service/%{version}/src/%{name}-%{version}.tar.xz
BuildRequires: kf6-extra-cmake-modules >= %{kf6_version}
BuildRequires: cmake(AccountsQt6)
BuildRequires: cmake(KF6CoreAddons) >= %{kf6_version}
BuildRequires: cmake(KF6DBusAddons) >= %{kf6_version}
BuildRequires: cmake(KF6I18n) >= %{kf6_version}
BuildRequires: cmake(KF6KCMUtils) >= %{kf6_version}
BuildRequires: cmake(KF6KIO) >= %{kf6_version}
BuildRequires: cmake(KF6Wallet) >= %{kf6_version}
BuildRequires: cmake(QCoro6Core)
BuildRequires: cmake(Qt6Core) >= %{qt6_version}
BuildRequires: cmake(Qt6Qml) >= %{qt6_version}
BuildRequires: cmake(Qt6Widgets) >= %{qt6_version}
BuildRequires: cmake(SignOnQt6)
Requires: signon-kwallet-extension
Recommends: kaccounts-providers
%description
Small system to administer web accounts for the sites and services across the
Plasma desktop, including: Google, Facebook, Owncloud, IMAP, Jabber and others.
%package -n libkaccounts6-2
Summary: KDE Accounts Providers - System Library
Recommends: kaccounts-integration
%description -n libkaccounts6-2
Small system to administer web accounts for the sites and services across the
Plasma desktop, including: Google, Facebook, Owncloud, IMAP, Jabber and others.
%package devel
Summary: KDE Accounts Providers - Development Files
# Used in KAccountsMacros.cmake
Requires: intltool
Requires: libkaccounts6-2 = %{version}
Requires: cmake(AccountsQt6)
Requires: cmake(KF6CoreAddons) >= %{kf6_version}
Requires: cmake(Qt6Widgets) >= %{qt6_version}
Requires: cmake(SignOnQt6)
Requires: pkgconfig(libaccounts-glib)
%description devel
Small system to administer web accounts for the sites and services across the
Plasma desktop, including: Google, Facebook, Owncloud, IMAP, Jabber and others.
This package provides development files.
%lang_package
%prep
%autosetup -p1
%build
%cmake_kf6
%kf6_build
%install
%kf6_install
%find_lang %{name} --with-man --all-name
%ldconfig_scriptlets -n libkaccounts6-2
%files
%{_kf6_applicationsdir}/kcm_kaccounts.desktop
%{_kf6_debugdir}/kaccounts.categories
%dir %{_kf6_plugindir}/kaccounts
%dir %{_kf6_plugindir}/kaccounts/daemonplugins
%{_kf6_plugindir}/kaccounts/daemonplugins/kaccounts_kio_webdav_plugin.so
%{_kf6_plugindir}/kf6/kded/kded_accounts.so
%{_kf6_plugindir}/plasma/kcms/systemsettings/kcm_kaccounts.so
%{_kf6_qmldir}/org/kde/kaccounts/
%files -n libkaccounts6-2
%license LICENSES/*
%{_kf6_libdir}/libkaccounts6.so.*
%files devel
%{_includedir}/KAccounts6/
%{_kf6_cmakedir}/KAccounts6/
%{_kf6_libdir}/libkaccounts6.so
%files lang -f %{name}.lang
%changelog

View File

@@ -0,0 +1,82 @@
%global __requires_exclude org.kde.kaccounts.(next|own)cloud
# The nextcloud plugin will only be built on these archs
%ifarch x86_64 %{x86_64} aarch64 riscv64
%bcond_without qtwebengine
%endif
%define kf6_version 6.19.0
%define qt6_version 6.9.0
Name: kaccounts-providers
Version: 25.12.2
Release: 0
Summary: KDE Accounts Providers
License: GPL-2.0-or-later
Source0: https://download.kde.org/stable/release-service/%{version}/src/%{name}-%{version}.tar.xz
BuildRequires: kf6-extra-cmake-modules >= %{kf6_version}
BuildRequires: intltool
BuildRequires: cmake(KAccounts6)
BuildRequires: cmake(KF6I18n) >= %{kf6_version}
BuildRequires: cmake(KF6KIO) >= %{kf6_version}
BuildRequires: cmake(KF6Package) >= %{kf6_version}
BuildRequires: cmake(QCoro6Core)
BuildRequires: cmake(QCoro6Network)
BuildRequires: cmake(Qt6Core) >= %{qt6_version}
BuildRequires: cmake(Qt6Qml) >= %{qt6_version}
%if %{with qtwebengine}
BuildRequires: cmake(Qt6WebEngineQuick) >= %{qt6_version}
%endif
Requires: signon-plugin-oauth2
%description
KDE Accounts Providers.
%lang_package
%prep
%autosetup -p1
%build
%cmake_kf6
%kf6_build
%install
%kf6_install
# qtwebkit is long dead
rm -r %{buildroot}%{_kf6_sysconfdir}/signon-ui/
%find_lang %{name} --all-name
%files
%license LICENSES/*
%{_kf6_iconsdir}/hicolor/256x256/apps/kaccounts-owncloud.png
%if %{with qtwebengine}
%{_kf6_iconsdir}/hicolor/scalable/apps/kaccounts-nextcloud.svg
%endif
%{_kf6_plugindir}/kaccounts/
%dir %{_kf6_sharedir}/accounts
%dir %{_kf6_sharedir}/accounts/providers
%dir %{_kf6_sharedir}/accounts/providers/kde
%{_kf6_sharedir}/accounts/providers/kde/google.provider
%if %{with qtwebengine}
%{_kf6_sharedir}/accounts/providers/kde/nextcloud.provider
%endif
%{_kf6_sharedir}/accounts/providers/kde/owncloud.provider
%dir %{_kf6_sharedir}/accounts/services
%dir %{_kf6_sharedir}/accounts/services/kde
%if %{with qtwebengine}
%{_kf6_sharedir}/accounts/services/kde/nextcloud-contacts.service
%{_kf6_sharedir}/accounts/services/kde/nextcloud-storage.service
%endif
%{_kf6_sharedir}/accounts/services/kde/owncloud-storage.service
%dir %{_kf6_sharedir}/kpackage/
%{_kf6_sharedir}/kpackage/genericqml/
%files lang -f %{name}.lang
%changelog

169
kf6-baloo/kf6-baloo.spec Normal file
View File

@@ -0,0 +1,169 @@
%define qt6_version 6.8.0
%define rname baloo
# Full KF6 version (e.g. 6.22.0)
%{!?_kf6_version: %global _kf6_version %{version}}
Name: kf6-baloo
Version: 6.20.0
Release: 0
Summary: Framework for searching and managing metadata
License: GPL-2.0-or-later AND LGPL-2.1-or-later AND LGPL-3.0-only
URL: https://www.kde.org
Source: https://ftp.ntu.edu.tw/pub/kde/stable/frameworks/6.20/%{rname}-%{version}.tar.xz
BuildRequires: kf6-extra-cmake-modules >= %{_kf6_version}
BuildRequires: libattr-devel
BuildRequires: lmdb-devel
BuildRequires: systemd-rpm-macros
BuildRequires: cmake(KF6Config) >= %{_kf6_version}
BuildRequires: cmake(KF6CoreAddons) >= %{_kf6_version}
BuildRequires: cmake(KF6Crash) >= %{_kf6_version}
BuildRequires: cmake(KF6DBusAddons) >= %{_kf6_version}
BuildRequires: cmake(KF6FileMetaData) >= %{_kf6_version}
BuildRequires: cmake(KF6I18n) >= %{_kf6_version}
BuildRequires: cmake(KF6IdleTime) >= %{_kf6_version}
BuildRequires: cmake(KF6KIO) >= %{_kf6_version}
BuildRequires: cmake(KF6Solid) >= %{_kf6_version}
BuildRequires: cmake(Qt6Core) >= %{qt6_version}
BuildRequires: cmake(Qt6DBus) >= %{qt6_version}
BuildRequires: cmake(Qt6Qml) >= %{qt6_version}
BuildRequires: cmake(Qt6Quick) >= %{qt6_version}
BuildRequires: cmake(Qt6Test) >= %{qt6_version}
BuildRequires: cmake(Qt6ToolsTools) >= %{qt6_version}
BuildRequires: cmake(Qt6Widgets) >= %{qt6_version}
%description
Baloo is a framework for searching and managing metadata.
%package -n libKF6Baloo6
Summary: Core library for Baloo Framework
%description -n libKF6Baloo6
Baloo is a framework for searching and managing metadata. This
package contains Baloo's core library.
%package -n libKF6BalooEngine6
Summary: Baloo Engine library
Recommends: libKF6Baloo6-lang
%description -n libKF6BalooEngine6
Baloo is a framework for searching and managing metadata. This
package contains Baloo's Engine library.
%package file
Summary: Filesearch components for Baloo Framework
Requires: qt6-sql-sqlite
Recommends: libKF6Baloo6-lang
Conflicts: baloo5-file
%description file
Baloo is a framework for searching and managing metadata. This
package contains filesearch components.
%package kioslaves
Summary: KIO slave components for Baloo Framework
Requires: kf6-kded
Recommends: libKF6Baloo6-lang
%description kioslaves
Baloo is a framework for searching and managing metadata. This
package contains KIO slave components.
%package tools
Summary: Aditional components for Baloo Framework
Recommends: libKF6Baloo6-lang
%description tools
Baloo is a framework for searching and managing metadata. This
package contains aditional command line utilities.
%package imports
Summary: QML components for Baloo Framework
Recommends: libKF6Baloo6-lang
%description imports
Baloo is a framework for searching and managing metadata. This
package contains QML imports.
%package devel
Summary: Development package for baloo6
Requires: libKF6Baloo6 = %{version}
Requires: libKF6BalooEngine6 = %{version}
Requires: lmdb-devel
Requires: cmake(KF6CoreAddons) >= %{_kf6_version}
Requires: cmake(KF6FileMetaData) >= %{_kf6_version}
Requires: cmake(Qt6Core) >= %{qt6_version}
Conflicts: baloo5-devel
%description devel
Baloo is a framework for searching and managing metadata. This
package contains aditional command line utilities. Development files.
%lang_package -n libKF6Baloo6
%prep
%autosetup -p1 -n %{rname}-%{version}
%build
%cmake_kf6
%kf6_build
%install
%kf6_install
%find_lang kf6-baloo --all-name
%ldconfig_scriptlets -n libKF6Baloo6
%ldconfig_scriptlets -n libKF6BalooEngine6
%post file
%{systemd_user_post kde-baloo.service}
%preun file
%{systemd_user_preun kde-baloo.service}
%postun file
%{systemd_user_postun kde-baloo.service}
%files -n libKF6Baloo6
%license LICENSES/*
%{_kf6_libdir}/libKF6Baloo.so.*
%files -n libKF6BalooEngine6
%{_kf6_libdir}/libKF6BalooEngine.so.*
%files file
%{_kf6_bindir}/balooctl6
%{_kf6_configdir}/autostart/baloo_file.desktop
%{_kf6_debugdir}/baloo.categories
%{_kf6_debugdir}/baloo.renamecategories
%{_kf6_libexecdir}/baloo_file
%{_kf6_libexecdir}/baloo_file_extractor
%{_userunitdir}/kde-baloo.service
%files kioslaves
%{_kf6_plugindir}/kf6/kded/baloosearchmodule.so
%{_kf6_plugindir}/kf6/kio/baloosearch.so
%{_kf6_plugindir}/kf6/kio/tags.so
%{_kf6_plugindir}/kf6/kio/timeline.so
%files tools
%{_kf6_bindir}/baloosearch6
%{_kf6_bindir}/balooshow6
%files imports
%{_kf6_qmldir}/org/kde/baloo/
%files devel
%{_kf6_includedir}/Baloo/
%{_kf6_cmakedir}/KF6Baloo/
%{_kf6_libdir}/libKF6Baloo.so
%{_kf6_pkgconfigdir}/KF6Baloo.pc
%{_kf6_sharedir}/dbus-1/interfaces/*.xml
%files -n libKF6Baloo6-lang -f kf6-baloo.lang
%changelog

View File

@@ -0,0 +1,78 @@
%define qt6_version 6.8.0
%define rname qqc2-desktop-style
# Full KF6 version (e.g. 6.22.0)
%{!?_kf6_version: %global _kf6_version %{version}}
Name: kf6-qqc2-desktop-style
Version: 6.20.0
Release: 0
Summary: A Qt Quick Controls 2 Style for Desktop UIs
License: GPL-2.0-or-later
URL: https://www.kde.org
Source: https://ftp.ntu.edu.tw/pub/kde/stable/frameworks/6.20/%{rname}-%{version}.tar.xz
BuildRequires: kf6-extra-cmake-modules
BuildRequires: cmake(KF6ColorScheme) >= %{_kf6_version}
BuildRequires: cmake(KF6Config) >= %{_kf6_version}
BuildRequires: cmake(KF6IconThemes) >= %{_kf6_version}
BuildRequires: cmake(KF6KirigamiPlatform) >= %{_kf6_version}
BuildRequires: cmake(Qt6Core) >= %{qt6_version}
BuildRequires: cmake(Qt6DBus) >= %{qt6_version}
BuildRequires: cmake(Qt6Gui) >= %{qt6_version}
BuildRequires: cmake(Qt6LinguistTools) >= %{qt6_version}
BuildRequires: cmake(Qt6Quick) >= %{qt6_version}
BuildRequires: cmake(Qt6QuickControls2) >= %{qt6_version}
BuildRequires: cmake(Qt6Widgets) >= %{qt6_version}
Requires: kf6-sonnet-imports >= %{_kf6_version}
%requires_eq qt6-declarative-imports
# plasma6-workspace sets up the env variables so that this theme
# is picked by default. It still works fine without it (no requires),
# but looks better with it. By itself plasma6-workspace does not use
# it (yet), so only install it with qt6-declarative-imports.
Supplements: (plasma6-workspace and qt6-declarative-imports)
Obsoletes: qqc2-desktop-style-lang < %{version}
%description
A Qt Quick Controls 2 style engine that uses the desktop style
to draw controls with QStyle.
%package devel
Summary: Development Files for Qt Quick Controls 2 Desktop Style
Requires: kf6-qqc2-desktop-style >= %{version}
%description devel
This file contains cmake files to be used by projects that depend on
qqc2-desktop-style.
Usually not needed as it is only a runtime dependency.
%lang_package
%prep
%autosetup -p1 -n %{rname}-%{version}
%build
%cmake_kf6
%kf6_build
%install
%kf6_install
%find_lang %{name} --all-name --with-qt
%files
%license LICENSES/*
%doc README.md
%dir %{_kf6_plugindir}/kf6/kirigami
%dir %{_kf6_plugindir}/kf6/kirigami/platform
%{_kf6_plugindir}/kf6/kirigami/platform/org.kde.desktop.so
%{_kf6_qmldir}/org/kde/desktop/
%{_kf6_qmldir}/org/kde/qqc2desktopstyle/
%files lang -f %{name}.lang
%files devel
%{_kf6_cmakedir}/KF6QQC2DesktopStyle/
%changelog

View File

@@ -0,0 +1,91 @@
%define kf6_version 6.18.0
%define qt6_version 6.9.0
%define rname ksystemstats
Name: ksystemstats6
Version: 6.5.5
Release: 0
# Full Plasma 6 version (e.g. 6.0.0)
%{!?_plasma6_bugfix: %define _plasma6_bugfix %{version}}
# Latest ABI-stable Plasma (e.g. 6.0 in KF6, but 6.0.80 in KUF)
%{!?_plasma6_version: %define _plasma6_version %(echo %{_plasma6_bugfix} | awk -F. '{print $1"."$2}')}
Summary: Plugin based system monitoring daemon
# Actually (GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL) AND CC0-1.0 AND BSD-3-Clause AND BSD-2-Clause
License: BSD-2-Clause AND BSD-3-Clause AND CC0-1.0 AND GPL-2.0-or-later
URL: https://www.kde.org
Source: https://download.kde.org/stable/plasma/%{version}/%{rname}-%{version}.tar.xz
BuildRequires: cmake >= 3.16
# For %%check
BuildRequires: dbus-1
BuildRequires: kf6-extra-cmake-modules >= %{kf6_version}
BuildRequires: libsensors4-devel
BuildRequires: pkgconfig
BuildRequires: systemd-rpm-macros
BuildRequires: cmake(KF6CoreAddons) >= %{kf6_version}
BuildRequires: cmake(KF6Crash) >= %{kf6_version}
BuildRequires: cmake(KF6KIO) >= %{kf6_version}
BuildRequires: cmake(KF6NetworkManagerQt) >= %{kf6_version}
BuildRequires: cmake(KF6Solid) >= %{kf6_version}
BuildRequires: cmake(KSysGuard) >= %{_plasma6_bugfix}
BuildRequires: cmake(Qt6Core) >= %{qt6_version}
BuildRequires: cmake(Qt6Test) >= %{qt6_version}
BuildRequires: pkgconfig(libnl-3.0)
BuildRequires: pkgconfig(libudev)
Conflicts: ksysguard5 < 5.21.80
Provides: ksystemstats5 = %{version}
Obsoletes: ksystemstats5 < %{version}
Obsoletes: ksystemstats5-lang < %{version}
%systemd_ordering
%description
KSystemStats is a daemon that collects statistics about the running system.
%lang_package
%prep
%autosetup -p1 -n %{rname}-%{version}
%build
%cmake_kf6 -DBUILD_TESTING:BOOL=TRUE
%kf6_build
%install
%kf6_install
%find_lang ksystemstats_plugins %{name}.lang
%check
# TestLinuxCpu aborts on ppc64le and s390x
%ifarch ppc64le s390x
%define excluded_tests 1
%endif
export QT_QPA_PLATFORM=offscreen
dbus-run-session /usr/bin/ctest --output-on-failure --test-dir build %{?excluded_tests:--exclude-regex "(TestLinuxCpu)"}
%preun
%{systemd_user_preun plasma-ksystemstats.service}
%post
%{systemd_user_post plasma-ksystemstats.service}
%postun
%{systemd_user_postun plasma-ksystemstats.service}
%files
%license LICENSES/*
%{_kf6_bindir}/ksystemstats
%{_kf6_bindir}/kstatsviewer
%{_kf6_debugdir}/ksystemstats.categories
%dir %{_kf6_plugindir}/ksystemstats/
%{_kf6_plugindir}/ksystemstats/ksystemstats_plugin_{cpu,disk,gpu,lmsensors,memory,network,osinfo,power,pressure}.so
%{_kf6_sharedir}/dbus-1/services/org.kde.ksystemstats1.service
%{_libexecdir}/ksystemstats_intel_helper
%{_userunitdir}/plasma-ksystemstats.service
%files lang -f %{name}.lang
%changelog

View File

@@ -0,0 +1,195 @@
%define kf6_version 6.18.0
%define qt6_version 6.9.0
%define rname libksysguard
# Full Plasma 5 version (e.g. 5.8.95)
%{!?_plasma6_bugfix: %define _plasma6_bugfix %{version}}
# Latest ABI-stable Plasma (e.g. 5.8 in KF6, but 5.8.95 in KUF)
%{!?_plasma6_version: %define _plasma6_version %(echo %{_plasma6_bugfix} | awk -F. '{print $1"."$2}')}
Name: libksysguard6
Version: 6.5.5
Release: 0
Summary: Task management and system monitoring library
License: GPL-2.0-or-later
URL: https://www.kde.org
Source: https://download.kde.org/stable/plasma/%{version}/%{rname}-%{version}.tar.xz
Source3: libksysguard6-rpmlintrc
BuildRequires: kf6-extra-cmake-modules >= %{kf6_version}
BuildRequires: libsensors4-devel
BuildRequires: pkgconfig
BuildRequires: qt6-gui-private-devel >= %{qt6_version}
BuildRequires: cmake(KF6Auth) >= %{kf6_version}
BuildRequires: cmake(KF6Completion) >= %{kf6_version}
BuildRequires: cmake(KF6Config) >= %{kf6_version}
BuildRequires: cmake(KF6ConfigWidgets) >= %{kf6_version}
BuildRequires: cmake(KF6CoreAddons) >= %{kf6_version}
BuildRequires: cmake(KF6GlobalAccel) >= %{kf6_version}
BuildRequires: cmake(KF6I18n) >= %{kf6_version}
BuildRequires: cmake(KF6IconThemes) >= %{kf6_version}
BuildRequires: cmake(KF6JobWidgets) >= %{kf6_version}
BuildRequires: cmake(KF6KIO) >= %{kf6_version}
BuildRequires: cmake(KF6NewStuff) >= %{kf6_version}
BuildRequires: cmake(KF6Package) >= %{kf6_version}
BuildRequires: cmake(KF6Service) >= %{kf6_version}
BuildRequires: cmake(KF6WidgetsAddons) >= %{kf6_version}
BuildRequires: cmake(KF6WindowSystem) >= %{kf6_version}
BuildRequires: cmake(Qt6DBus) >= %{qt6_version}
BuildRequires: cmake(Qt6Network) >= %{qt6_version}
BuildRequires: cmake(Qt6Qml) >= %{qt6_version}
BuildRequires: cmake(Qt6Quick) >= %{qt6_version}
BuildRequires: cmake(Qt6UiPlugin) >= %{qt6_version}
BuildRequires: cmake(Qt6Widgets) >= %{qt6_version}
BuildRequires: pkgconfig(libdrm)
BuildRequires: pkgconfig(libnl-3.0)
BuildRequires: pkgconfig(libpcap)
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xres)
BuildRequires: pkgconfig(zlib)
# Has no effect, we use set_permissions
# BuildRequires: libcap-progs
Recommends: libksysguard6-imports
Recommends: libksysguard6-plugins
Provides: libksysguard5 = %{version}
Obsoletes: libksysguard5 < %{version}
Obsoletes: libksysguard5-lang < %{version}
%description
Task management and system monitoring library.
%package -n libKSysGuardSystemStats2
Summary: Library for system monitoring plugins for KSystemStats
Requires: ksysguardsystemstats6-data >= %{version}
%description -n libKSysGuardSystemStats2
This library is used by plugins for KSystemStats, a system monitoring daemon.
%package -n ksysguardsystemstats6-data
Summary: Data needed by libKSysGuardSystemStats
Provides: ksysguardsystemstats-data = %{version}
Obsoletes: ksysguardsystemstats-data < %{version}
%description -n ksysguardsystemstats6-data
Contains the unversioned D-Bus interface definition for KSystemStats plugins.
%package plugins
Summary: Task management and system monitoring library -- plugins
Requires: libksysguard6 = %{version}
# For post and verifyscript
Requires(post): permissions
Requires(verify): permissions
Conflicts: kdebase4-workspace < 5.3.0
Conflicts: ksysguard5 < 5.21.80
Provides: libksysguard5-plugins = %{version}
Obsoletes: libksysguard5-plugins < %{version}
Provides: libksysguard5-helper = %{version}
Obsoletes: libksysguard5-helper < %{version}
%description plugins
Task management and system monitoring library. This package contains plugins.
%package imports
Summary: Task management and system monitoring library -- QML bindings
Requires: libksysguard6 = %{version}
Obsoletes: libksysguard5-imports < %{version}
%description imports
This package provides QtQuick bindings for libksysguard, allowing its use in
QML applications.
%package devel
Summary: Task management and system monitoring library -- devel files
Requires: libKSysGuardSystemStats2 >= %{version}
Requires: libksysguard6 >= %{version}
Requires: cmake(KF6Config) >= %{kf6_version}
Requires: cmake(KF6I18n) >= %{kf6_version}
Requires: cmake(KF6IconThemes) >= %{kf6_version}
Requires: cmake(Qt6Core) >= %{qt6_version}
Requires: cmake(Qt6Network) >= %{qt6_version}
Requires: cmake(Qt6Widgets) >= %{qt6_version}
Provides: libksysguard5-devel = %{version}
Obsoletes: libksysguard5-devel < %{version}
%description devel
Task management and system monitoring library. This package contains development
files.
%lang_package
%prep
%autosetup -p1 -n %{rname}-%{version}
%build
%cmake_kf6
%kf6_build
%install
%kf6_install
%find_lang %{name} --all-name
%post plugins
%set_permissions %{_libexecdir}/ksysguard/ksgrd_network_helper
%verifyscript plugins
%verify_permissions -e %{_libexecdir}/ksysguard/ksgrd_network_helper
%ldconfig_scriptlets
%ldconfig_scriptlets -n libKSysGuardSystemStats2
%files
# TODO? split libraries and drop the -rpmlintrc file
%license LICENSES/*
%{_kf6_debugdir}/libksysguard.categories
%{_kf6_knsrcfilesdir}/systemmonitor-faces.knsrc
%{_kf6_knsrcfilesdir}/systemmonitor-presets.knsrc
%{_kf6_libdir}/libKSysGuardFormatter.so.*
%{_kf6_libdir}/libKSysGuardSensorFaces.so.*
%{_kf6_libdir}/libKSysGuardSensors.so.*
%{_kf6_libdir}/libprocesscore.so.*
%dir %{_kf6_plugindir}/kf6/packagestructure/
%{_kf6_plugindir}/kf6/packagestructure/ksysguard_sensorface.so
%{_kf6_sharedir}/ksysguard/
%files -n libKSysGuardSystemStats2
%license LICENSES/*
%{_kf6_libdir}/libKSysGuardSystemStats.so.*
%files -n ksysguardsystemstats6-data
%{_kf6_sharedir}/dbus-1/interfaces/org.kde.ksystemstats1.xml
%files plugins
%{_kf6_dbuspolicydir}/org.kde.ksysguard.processlisthelper.conf
%dir %{_kf6_plugindir}/ksysguard/
%dir %{_kf6_plugindir}/ksysguard/process
%{_kf6_plugindir}/ksysguard/process/ksysguard_plugin_gpu.so
%{_kf6_plugindir}/ksysguard/process/ksysguard_plugin_network.so
%{_kf6_sharedir}/dbus-1/system-services/org.kde.ksysguard.processlisthelper.service
%{_kf6_sharedir}/polkit-1/actions/org.kde.ksysguard.processlisthelper.policy
%{_kf6_libexecdir}/kauth/ksysguardprocesslist_helper
%dir %{_libexecdir}/ksysguard/
%{_libexecdir}/ksysguard/ksgrd_network_helper
%files imports
%dir %{_kf6_qmldir}/org/kde/ksysguard
%{_kf6_qmldir}/org/kde/ksysguard/faces/
%{_kf6_qmldir}/org/kde/ksysguard/formatter/
%{_kf6_qmldir}/org/kde/ksysguard/process/
%{_kf6_qmldir}/org/kde/ksysguard/sensors/
%files devel
%{_includedir}/ksysguard/
%{_kf6_cmakedir}/KSysGuard/
%{_kf6_libdir}/libKSysGuardFormatter.so
%{_kf6_libdir}/libKSysGuardSensorFaces.so
%{_kf6_libdir}/libKSysGuardSensors.so
%{_kf6_libdir}/libKSysGuardSystemStats.so
%{_kf6_libdir}/libprocesscore.so
%files lang -f %{name}.lang
%changelog

View File

@@ -0,0 +1,39 @@
%define kf6_version 6.18.0
%define rname plasma-workspace-wallpapers
Name: plasma6-workspace-wallpapers
Version: 6.5.5
Release: 0
Summary: Additional Plasma Wallpapers
License: GPL-2.0-or-later
URL: https://www.kde.org
Source: https://download.kde.org/stable/plasma/%{version}/%{rname}-%{version}.tar.xz
BuildRequires: fdupes
BuildRequires: kf6-extra-cmake-modules >= %{kf6_version}
Provides: plasma5-workspace-wallpapers = %{version}
Obsoletes: plasma5-workspace-wallpapers < %{version}
BuildArch: noarch
%description
Additional wallpapers for Plasma Workspace.
%prep
%autosetup -p1 -n %{rname}-%{version}
%build
%cmake_kf6
%kf6_build
%install
%kf6_install
%files
%license COPYING*
%{_kf6_sharedir}/wallpapers/
%changelog

View File

@@ -0,0 +1,27 @@
From 846222c0dac6747256fd3d474db174643e84fee0 Mon Sep 17 00:00:00 2001
From: Fabian Vogt <fabian@ritter-vogt.de>
Date: Sat, 1 Oct 2016 19:22:36 +0200
Subject: [PATCH] Ignore default sddm face icons
They are not compatible with the theme
---
diff --git a/lookandfeel/components/UserList.qml b/lookandfeel/components/UserList.qml
index 2095aae5b..8feee1600 100644
--- a/lookandfeel/components/UserList.qml
+++ b/lookandfeel/components/UserList.qml
@@ -54,7 +54,13 @@ ListView {
interactive: count > 1
delegate: UserDelegate {
- avatarPath: model.icon || ""
+ avatarPath: {
+ var incompatible = /\/usr\/share\/sddm\/faces\/((root)?)\.face\.icon$/
+ if (!model.icon || incompatible.test(model.icon))
+ return ""
+
+ return model.icon
+ }
iconSource: model.iconName || "user-identity"
fontSize: view.fontSize
needsPassword: model.needsPassword !== undefined ? model.needsPassword : true

View File

@@ -0,0 +1,133 @@
From a437cb34a3cacc0daae012a26cb5a28407a6f873 Mon Sep 17 00:00:00 2001
From: Fabian Vogt <fabian@ritter-vogt.de>
Date: Wed, 28 Feb 2018 17:10:14 +0100
Subject: [PATCH] Revert "No icons on the desktop by default"
This reverts commit 240d0d6fe1e5db88e304199339396bd48c23e130.
We want those icons in openSUSE. They've always been there and there is no
reason not to have them.
---
kioworkers/desktop/CMakeLists.txt | 1 +
kioworkers/desktop/Home.desktop | 88 ++++++++++++++++++++++++++++++++++++++++
kioworkers/desktop/kio_desktop.cpp | 4 ++
3 files changed, 93 insertions(+)
create mode 100644 kioworkers/desktop/Home.desktop
Index: plasma-workspace-5.17.80git.20221219T021648~0ddf86c99/kioworkers/desktop/CMakeLists.txt
===================================================================
--- plasma-workspace-5.17.80git.20221219T021648~0ddf86c99.orig/kioworkers/desktop/CMakeLists.txt 2022-12-19 03:16:48.000000000 +0100
+++ plasma-workspace-5.17.80git.20221219T021648~0ddf86c99/kioworkers/desktop/CMakeLists.txt 2022-12-19 11:17:42.513241900 +0100
@@ -24,3 +24,4 @@
########### install files ###############
install(FILES directory.desktop directory.trash DESTINATION ${KDE_INSTALL_DATADIR}/kio_desktop)
+install(FILES Home.desktop DESTINATION ${KDE_INSTALL_DATADIR}/kio_desktop/DesktopLinks)
Index: plasma-workspace-5.17.80git.20221219T021648~0ddf86c99/kioworkers/desktop/Home.desktop
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ plasma-workspace-5.17.80git.20221219T021648~0ddf86c99/kioworkers/desktop/Home.desktop 2022-12-19 11:17:42.513241900 +0100
@@ -0,0 +1,88 @@
+[Desktop Entry]
+Encoding=UTF-8
+Name=Home
+Name[ca]=Inici
+Name[ca@valencia]=Inici
+Name[cs]=Můj adresář
+Name[da]=Hjem
+Name[de]=Persönlicher Ordner
+Name[el]=Προσωπικός φάκελος
+Name[en_GB]=Home
+Name[es]=Inicio
+Name[et]=Kodu
+Name[eu]=Etxea
+Name[fi]=Koti
+Name[fr]=Dossier personnel
+Name[gl]=Persoal
+Name[he]=בית
+Name[hu]=Saját mappa
+Name[is]=Heimamappa
+Name[it]=Home
+Name[ja]=ホーム
+Name[ko]=홈
+Name[lt]=Pradžia
+Name[nl]=Home
+Name[nn]=Heim
+Name[pa]=ਘਰ
+Name[pl]=Katalog domowy
+Name[pt]=Pasta Pessoal
+Name[pt_BR]=Pasta Pessoal
+Name[ru]=Домашняя папка
+Name[se]=Ruoktu
+Name[sk]=Domov
+Name[sl]=Dom
+Name[sr]=Домаће
+Name[sr@ijekavian]=Домаће
+Name[sr@ijekavianlatin]=Domaće
+Name[sr@latin]=Domaće
+Name[sv]=Hem
+Name[tr]=Başlangıç
+Name[uk]=Домівка
+Name[x-test]=xxHomexx
+Name[zh_CN]=主文件夹
+Name[zh_TW]=家目錄
+GenericName=Personal Files
+GenericName[ca]=Fitxers personals
+GenericName[ca@valencia]=Fitxers personals
+GenericName[cs]=Osobní soubory
+GenericName[da]=Personlige filer
+GenericName[de]=Persönliche Dateien
+GenericName[el]=Προσωπικά αρχεία
+GenericName[en_GB]=Personal Files
+GenericName[es]=Archivos personales
+GenericName[et]=Isiklikud failid
+GenericName[eu]=Fitxategi pertsonalak
+GenericName[fi]=Omat tiedostot
+GenericName[fr]=Fichiers personnels
+GenericName[gl]=Ficheiros persoais
+GenericName[he]=קבצים אישיים
+GenericName[hu]=Személyes fájlok
+GenericName[is]=Einkaskrár
+GenericName[it]=File personali
+GenericName[ja]=個人のファイル
+GenericName[ko]=개인적인 파일
+GenericName[lt]=Asmeniniai failai
+GenericName[nl]=Persoonlijke bestanden
+GenericName[nn]=Personlege filer
+GenericName[pa]=ਨਿੱਜੀ ਫਾਇਲਾਂ
+GenericName[pl]=Pliki osobiste
+GenericName[pt]=Ficheiros Pessoais
+GenericName[pt_BR]=Arquivos pessoais
+GenericName[ru]=Личные файлы
+GenericName[se]=Iežat fiillat
+GenericName[sk]=Osobné súbory
+GenericName[sl]=Osebne datoteke
+GenericName[sr]=Лични фајлови
+GenericName[sr@ijekavian]=Лични фајлови
+GenericName[sr@ijekavianlatin]=Lični fajlovi
+GenericName[sr@latin]=Lični fajlovi
+GenericName[sv]=Personliga filer
+GenericName[tr]=Kişisel Dosyalar
+GenericName[uk]=Особисті файли
+GenericName[x-test]=xxPersonal Filesxx
+GenericName[zh_CN]=个人文件
+GenericName[zh_TW]=個人檔案
+URL[$e]=$HOME
+Icon=user-home
+Type=Link
+
Index: plasma-workspace-5.17.80git.20221219T021648~0ddf86c99/kioworkers/desktop/kio_desktop.cpp
===================================================================
--- plasma-workspace-5.17.80git.20221219T021648~0ddf86c99.orig/kioworkers/desktop/kio_desktop.cpp 2022-12-19 03:16:48.000000000 +0100
+++ plasma-workspace-5.17.80git.20221219T021648~0ddf86c99/kioworkers/desktop/kio_desktop.cpp 2022-12-19 11:17:42.513241900 +0100
@@ -79,6 +79,10 @@ void DesktopProtocol::checkLocalInstall()
QFile::copy(QStandardPaths::locate(QStandardPaths::GenericDataLocation, QStringLiteral("kio_desktop/directory.desktop")),
desktopPath + "/.directory"_L1);
+ // Copy the trash link
+ QFile::copy(QStandardPaths::locate(QStandardPaths::GenericDataLocation, QStringLiteral("kio_desktop/directory.trash")),
+ desktopPath + "/trash.desktop"_L1);
+
// Copy the desktop links
QSet<QString> links;
const auto dirs =

View File

@@ -0,0 +1,211 @@
From 1a5f040113e1d27f9298bfdcdf55e8f2012acb5a Mon Sep 17 00:00:00 2001
From: Fabian Vogt <fabian@ritter-vogt.de>
Date: Sun, 10 Mar 2024 19:51:29 +0100
Subject: [PATCH] Revert "krunner: Remove kconf_update code"
This reverts commit 713f14f3fa6515e73796d86d7b442f39f288b5e9.
We need the migration for upgrades from < 15.4, which openQA tests
still.
Changes after revert: Set Version=6 and use QGuiApplication for QAction.
---
krunner/CMakeLists.txt | 1 +
krunner/update/CMakeLists.txt | 13 ++++
krunner/update/krunnerglobalshortcuts.cpp | 76 ++++++++++++++++++++++
krunner/update/krunnerglobalshortcuts2.upd | 3 +
krunner/update/krunnerhistory.cpp | 50 ++++++++++++++
krunner/update/krunnerhistory.upd | 3 +
6 files changed, 146 insertions(+)
create mode 100644 krunner/update/CMakeLists.txt
create mode 100644 krunner/update/krunnerglobalshortcuts.cpp
create mode 100644 krunner/update/krunnerglobalshortcuts2.upd
create mode 100644 krunner/update/krunnerhistory.cpp
create mode 100644 krunner/update/krunnerhistory.upd
diff --git a/krunner/CMakeLists.txt b/krunner/CMakeLists.txt
index c17bac6479..c7fead06d6 100644
--- a/krunner/CMakeLists.txt
+++ b/krunner/CMakeLists.txt
@@ -52,3 +52,4 @@ ecm_install_configured_files(
)
install(FILES completions/krunner.zsh RENAME _krunner DESTINATION ${KDE_INSTALL_ZSHAUTOCOMPLETEDIR})
+add_subdirectory(update)
diff --git a/krunner/update/CMakeLists.txt b/krunner/update/CMakeLists.txt
new file mode 100644
index 0000000000..0fbac69b3d
--- /dev/null
+++ b/krunner/update/CMakeLists.txt
@@ -0,0 +1,13 @@
+set(krunnerglobalshortcuts_SRCS
+ krunnerglobalshortcuts.cpp
+)
+
+add_executable(krunnerglobalshortcuts ${krunnerglobalshortcuts_SRCS})
+
+target_link_libraries(krunnerglobalshortcuts KF6::CoreAddons KF6::Service KF6::Runner KF6::ConfigCore KF6::GlobalAccel KF6::XmlGui)
+
+add_executable(krunnerhistory krunnerhistory.cpp)
+target_link_libraries(krunnerhistory KF6::Runner KF6::ConfigCore Plasma::Activities)
+
+install(TARGETS krunnerglobalshortcuts krunnerhistory DESTINATION ${KDE_INSTALL_LIBDIR}/kconf_update_bin/)
+install(FILES krunnerglobalshortcuts2.upd krunnerhistory.upd DESTINATION ${KDE_INSTALL_KCONFUPDATEDIR})
diff --git a/krunner/update/krunnerglobalshortcuts.cpp b/krunner/update/krunnerglobalshortcuts.cpp
new file mode 100644
index 0000000000..513d2ac74d
--- /dev/null
+++ b/krunner/update/krunnerglobalshortcuts.cpp
@@ -0,0 +1,76 @@
+/*
+ SPDX-FileCopyrightText: 2019 Kai Uwe Broulik <kde@broulik.de>
+ SPDX-FileCopyrightText: 2020 David Redondo <kde@david-redondo.de>
+
+ SPDX-License-Identifier: GPL-2.0-or-later
+*/
+
+#include <QGuiApplication>
+#include <QDebug>
+#include <QStandardPaths>
+
+#include <KActionCollection>
+#include <KConfig>
+#include <KConfigGroup>
+#include <KDesktopFile>
+#include <KGlobalAccel>
+#include <KSharedConfig>
+
+int main(int argc, char **argv)
+{
+ QGuiApplication app(argc, argv);
+
+ const QString oldComponentName = QStringLiteral("krunner");
+ const QString oldDesktopFile = QStringLiteral("krunner.desktop");
+ const QString newDesktopFile = QStringLiteral("org.kde.krunner.desktop");
+
+ // Since we need to fake those actions, read the translated names from the desktop file
+ KDesktopFile df(QStandardPaths::GenericDataLocation, QStringLiteral("kglobalaccel/") + newDesktopFile);
+ QString displayName = QStringLiteral("KRunner");
+ if (!df.readName().isEmpty()) {
+ displayName = df.readName();
+ }
+ const QString clipboardActionName = df.actionGroup(QStringLiteral("RunClipboard"))
+ .readEntry(QStringLiteral("Name"), //
+ QStringLiteral("Run command on clipboard contents"));
+
+ KActionCollection shortCutActions(nullptr, newDesktopFile);
+ shortCutActions.setComponentDisplayName(displayName);
+ // The actions are intentionally allocated and never cleaned up, because otherwise KGlobalAccel
+ // will mark them as inactive
+ auto runCommandAction = new QAction(displayName);
+ shortCutActions.addAction(QStringLiteral("_launch"), runCommandAction);
+ auto runClipboardAction = new QAction(clipboardActionName);
+ shortCutActions.addAction(QStringLiteral("RunClipboard"), runClipboardAction);
+
+ QList<QKeySequence> oldRunCommand;
+ QList<QKeySequence> oldRunClipboard;
+
+ // It can happen that the old component is not active so we do it unconditionally
+ KActionCollection oldActions(nullptr, oldComponentName);
+ QAction oldRunCommandAction, oldRunClipboardAction;
+ oldActions.addAction(QStringLiteral("run command"), &oldRunCommandAction);
+ oldActions.addAction(QStringLiteral("run command on clipboard contents"), &oldRunClipboardAction);
+ oldRunCommand = KGlobalAccel::self()->globalShortcut(oldComponentName, oldRunCommandAction.objectName());
+ oldRunClipboard = KGlobalAccel::self()->globalShortcut(oldComponentName, oldRunClipboardAction.objectName());
+ KGlobalAccel::self()->setShortcut(&oldRunCommandAction, {});
+ KGlobalAccel::self()->setShortcut(&oldRunClipboardAction, {});
+ KGlobalAccel::self()->removeAllShortcuts(&oldRunCommandAction);
+ KGlobalAccel::self()->removeAllShortcuts(&oldRunClipboardAction);
+ KGlobalAccel::self()->cleanComponent(oldComponentName);
+
+ if (KGlobalAccel::isComponentActive(oldDesktopFile)) {
+ oldRunCommand = KGlobalAccel::self()->globalShortcut(oldDesktopFile, runCommandAction->objectName());
+ oldRunClipboard = KGlobalAccel::self()->globalShortcut(oldDesktopFile, runClipboardAction->objectName());
+ KGlobalAccel::self()->cleanComponent(oldDesktopFile);
+ }
+
+ if (!oldRunCommand.isEmpty()) {
+ KGlobalAccel::self()->setShortcut(runCommandAction, oldRunCommand, KGlobalAccel::NoAutoloading);
+ }
+ if (!oldRunClipboard.isEmpty()) {
+ KGlobalAccel::self()->setShortcut(runClipboardAction, oldRunClipboard, KGlobalAccel::NoAutoloading);
+ }
+
+ return 0;
+}
diff --git a/krunner/update/krunnerglobalshortcuts2.upd b/krunner/update/krunnerglobalshortcuts2.upd
new file mode 100644
index 0000000000..84c7197382
--- /dev/null
+++ b/krunner/update/krunnerglobalshortcuts2.upd
@@ -0,0 +1,3 @@
+Version=6
+Id=5.22KRunnerGlobalShortcuts
+Script=krunnerglobalshortcuts
diff --git a/krunner/update/krunnerhistory.cpp b/krunner/update/krunnerhistory.cpp
new file mode 100644
index 0000000000..9e3c29ef4a
--- /dev/null
+++ b/krunner/update/krunnerhistory.cpp
@@ -0,0 +1,50 @@
+/*
+ SPDX-FileCopyrightText: 2020 Alexander Lohnau <alexander.lohnau@gmx.de>
+
+ SPDX-License-Identifier: GPL-2.0-or-later
+*/
+
+#include <QCoreApplication>
+#include <QTimer>
+
+#include <PlasmaActivities/Consumer>
+#include <KConfigGroup>
+#include <KSharedConfig>
+
+using namespace Qt::StringLiterals;
+
+int main(int argc, char **argv)
+{
+ QCoreApplication app(argc, argv);
+
+ // Migrate data to state data file
+ KSharedConfigPtr krunnerrc = KSharedConfig::openConfig(u"krunnerrc"_s);
+ KConfigGroup stateData = krunnerrc->group(u"PlasmaRunnerManager"_s);
+ KSharedConfigPtr newStateLocation = KSharedConfig::openConfig(u"krunnerstaterc"_s, KConfig::NoGlobals, QStandardPaths::GenericDataLocation);
+ stateData.reparent(newStateLocation.data());
+ stateData.sync();
+
+ // Migrate history to activity aware config
+ auto consumer = new KActivities::Consumer();
+ // Wait a bit for consumer to be initialized
+ QObject::connect(consumer, &KActivities::Consumer::serviceStatusChanged, consumer, [consumer, newStateLocation, krunnerrc]() {
+ const QString history = krunnerrc->group(u"General"_s).readEntry("history");
+ QStringList activities = consumer->activities();
+ if (activities.isEmpty()) {
+ activities.append(QStringLiteral("00000000-0000-0000-0000-000000000000"));
+ }
+ KConfigGroup newHistory = newStateLocation->group(u"PlasmaRunnerManager"_s).group(u"History"_s);
+ for (const QString &activity : std::as_const(activities)) {
+ newHistory.writeEntry(activity, history);
+ }
+ newHistory.sync();
+ // Delete old values
+ krunnerrc->group(u"General"_s).deleteEntry("history");
+ krunnerrc->deleteGroup(u"PlasmaRunnerManager"_s);
+ krunnerrc->group(QStringLiteral("PlasmaRunnerManager")).writeEntry("migrated", true);
+ krunnerrc->sync();
+ qApp->exit();
+ });
+
+ return QCoreApplication::exec();
+}
diff --git a/krunner/update/krunnerhistory.upd b/krunner/update/krunnerhistory.upd
new file mode 100644
index 0000000000..bb3c0502b0
--- /dev/null
+++ b/krunner/update/krunnerhistory.upd
@@ -0,0 +1,3 @@
+Version=6
+Id=5.21KRunnerHistory
+Script=krunnerhistory
--
2.44.0

View File

@@ -0,0 +1,25 @@
From a897020dc3bbd7aa47f8bdf8c724bdce81206ca5 Mon Sep 17 00:00:00 2001
From: Christophe Marin <christophe@krop.fr>
Date: Sun, 9 Jul 2023 00:06:52 +0200
Subject: [PATCH] Use qdbus6
---
startkde/startplasma-wayland.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/startkde/startplasma-wayland.cpp b/startkde/startplasma-wayland.cpp
index caeadd70a..f7ae977de 100644
--- a/startkde/startplasma-wayland.cpp
+++ b/startkde/startplasma-wayland.cpp
@@ -56,7 +56,7 @@ int main(int argc, char **argv)
runEnvironmentScripts();
if (!qEnvironmentVariableIsSet("DBUS_SESSION_BUS_ADDRESS")) {
- out << "startplasmacompositor: Could not start D-Bus. Can you call qdbus?\n";
+ out << "startplasmacompositor: Could not start D-Bus. Can you call qdbus6?\n";
return 1;
}
setupPlasmaEnvironment();
--
2.41.0

View File

@@ -0,0 +1,7 @@
<constraints>
<hardware>
<disk>
<size unit="G">5</size>
</disk>
</hardware>
</constraints>

View File

@@ -0,0 +1,14 @@
Hide YaST modules from the applications menu. boo#951888
diff --git a/menu/desktop/plasma-applications.menu b/menu/desktop/plasma-applications.menu
index 85f842d6a0..2a4e6b66c0 100644
--- a/menu/desktop/plasma-applications.menu
+++ b/menu/desktop/plasma-applications.menu
@@ -342,6 +342,7 @@
<And>
<Category>System</Category>
<Not><Category>X-KDE-More</Category></Not>
+ <Not><Category>X-SuSE-YaST</Category></Not>
</And>
</Include>
<Menu>

View File

@@ -0,0 +1,626 @@
# TODO Remove when gpsd has a qt6 flavor
%global __qml_requires_opts --qtver 6
%global __requires_exclude qt6qmlimport\\((org\\.kde\\.plasma\\.private|org\\.kde\\.plasma\\.workspace|org\\.kde\\.notificationmanager|org\\.kde\\.plasma\\.lookandfeel|org\\.kde\\.plasma\\.wallpapers|org\\.kde\\.taskmanager|org\\.kde\\.holidayeventshelperplugin|org\\.kde\\.kscreenlocker).*
%define kf6_version 6.18.0
%define qt6_version 6.9.0
%define rname plasma-workspace
# Full Plasma 6 version (e.g. 6.0.0)
%{!?_plasma6_bugfix: %global _plasma6_bugfix %{version}}
# Latest ABI-stable Plasma (e.g. 6.0 in KF6, but 6.0.80 in KUF)
%{!?_plasma6_version: %define _plasma6_version %(echo %{_plasma6_bugfix} | awk -F. '{print $1"."$2}')}
Name: plasma6-workspace
Version: 6.5.5
Release: 0
Summary: The KDE Plasma Workspace Components
License: GPL-2.0-or-later
URL: https://www.kde.org/
Source: https://download.kde.org/stable/plasma/%{version}/%{rname}-%{version}.tar.xz
Source3: sddm.conf
Source4: waitforkded.conf
# PATCHES 501-??? are PATCH-FIX-OPENSUSE
Patch501: 0001-Use-qdbus6.patch
Patch502: 0001-Ignore-default-sddm-face-icons.patch
# boo#951888
Patch503: dont-show-yast-modules-in-the-applications-menu.patch
# As long as migration from Leap < 15.4 is still relevant, breaks openQA otherwise.
Patch504: 0001-Revert-krunner-Remove-kconf_update-code.patch
# PATCH-FEATURE-OPENSUSE
Patch506: 0001-Revert-No-icons-on-the-desktop-by-default.patch
BuildRequires: fdupes
BuildRequires: kf6-breeze-icons
BuildRequires: kf6-extra-cmake-modules >= %{kf6_version}
# Due to KWinDBusInterface not having a cmake version config file, we need to BR kwin6-devel instead
# BuildRequires: cmake(KWinDBusInterface) >= %%{_plasma6_bugfix}
BuildRequires: kwin6-devel >= %{_plasma6_bugfix}
BuildRequires: pkgconfig
BuildRequires: qt6-gui-private-devel >= %{qt6_version}
BuildRequires: qt6-waylandclient-private-devel >= %{qt6_version}
BuildRequires: cmake(AppStreamQt) >= 1.0
BuildRequires: cmake(Breeze) >= %{_plasma6_bugfix}
BuildRequires: cmake(KExiv2Qt6)
BuildRequires: cmake(KF6Archive) >= %{kf6_version}
BuildRequires: cmake(KF6Auth) >= %{kf6_version}
BuildRequires: cmake(KF6Baloo) >= %{kf6_version}
BuildRequires: cmake(KF6CoreAddons) >= %{kf6_version}
BuildRequires: cmake(KF6Crash) >= %{kf6_version}
BuildRequires: cmake(KF6DBusAddons) >= %{kf6_version}
BuildRequires: cmake(KF6Declarative) >= %{kf6_version}
BuildRequires: cmake(KF6DocTools) >= %{kf6_version}
BuildRequires: cmake(KF6GlobalAccel) >= %{kf6_version}
BuildRequires: cmake(KF6GuiAddons) >= %{kf6_version}
BuildRequires: cmake(KF6Holidays) >= %{kf6_version}
BuildRequires: cmake(KF6I18n) >= %{kf6_version}
BuildRequires: cmake(KF6IconThemes) >= %{kf6_version}
BuildRequires: cmake(KF6IdleTime) >= %{kf6_version}
BuildRequires: cmake(KF6ItemModels) >= %{kf6_version}
BuildRequires: cmake(KF6KCMUtils) >= %{kf6_version}
BuildRequires: cmake(KF6KDED) >= %{kf6_version}
BuildRequires: cmake(KF6KIO) >= %{kf6_version}
BuildRequires: cmake(KF6KirigamiPlatform) >= %{kf6_version}
BuildRequires: cmake(KF6NetworkManagerQt) >= %{kf6_version}
BuildRequires: cmake(KF6NewStuff) >= %{kf6_version}
BuildRequires: cmake(KF6Notifications) >= %{kf6_version}
BuildRequires: cmake(KF6NotifyConfig) >= %{kf6_version}
BuildRequires: cmake(KF6Package) >= %{kf6_version}
BuildRequires: cmake(KF6Prison) >= %{kf6_version}
BuildRequires: cmake(KF6QuickCharts) >= %{kf6_version}
BuildRequires: cmake(KF6Runner) >= %{kf6_version}
BuildRequires: cmake(KF6Screen) >= %{_plasma6_bugfix}
BuildRequires: cmake(KF6Solid) >= %{kf6_version}
BuildRequires: cmake(KF6StatusNotifierItem) >= %{kf6_version}
BuildRequires: cmake(KF6Svg) >= %{kf6_version}
BuildRequires: cmake(KF6TextEditor) >= %{kf6_version}
BuildRequires: cmake(KF6TextWidgets) >= %{kf6_version}
BuildRequires: cmake(KF6UnitConversion) >= %{kf6_version}
BuildRequires: cmake(KF6UserFeedback) >= %{kf6_version}
BuildRequires: cmake(KF6Wallet) >= %{kf6_version}
BuildRequires: cmake(KNightTime) >= %{_plasma6_bugfix}
BuildRequires: cmake(KPipeWire) >= %{_plasma6_bugfix}
BuildRequires: cmake(KScreenLocker) >= %{_plasma6_bugfix}
BuildRequires: cmake(KSysGuard) >= %{_plasma6_bugfix}
BuildRequires: cmake(KWayland) >= %{_plasma6_bugfix}
BuildRequires: cmake(LayerShellQt) >= %{_plasma6_bugfix}
BuildRequires: cmake(Phonon4Qt6)
BuildRequires: cmake(Plasma) >= %{_plasma6_bugfix}
BuildRequires: cmake(Plasma5Support) >= %{_plasma6_bugfix}
BuildRequires: cmake(PlasmaActivities) >= %{_plasma6_bugfix}
BuildRequires: cmake(PlasmaActivitiesStats) >= %{_plasma6_bugfix}
BuildRequires: cmake(PlasmaQuick) >= %{_plasma6_bugfix}
BuildRequires: cmake(PlasmaWaylandProtocols) >= 1.6
BuildRequires: cmake(PolkitQt6-1)
BuildRequires: cmake(QCoro6)
BuildRequires: cmake(Qt6Concurrent) >= %{qt6_version}
BuildRequires: cmake(Qt6Core5Compat) >= %{qt6_version}
BuildRequires: cmake(Qt6DBus) >= %{qt6_version}
BuildRequires: cmake(Qt6Gui) >= %{qt6_version}
BuildRequires: cmake(Qt6Location) >= %{qt6_version}
BuildRequires: cmake(Qt6Network) >= %{qt6_version}
BuildRequires: cmake(Qt6Positioning) >= %{qt6_version}
BuildRequires: cmake(Qt6PrintSupport) >= %{qt6_version}
BuildRequires: cmake(Qt6Qml) >= %{qt6_version}
BuildRequires: cmake(Qt6Quick) >= %{qt6_version}
BuildRequires: cmake(Qt6QuickControls2) >= %{qt6_version}
BuildRequires: cmake(Qt6QuickWidgets) >= %{qt6_version}
BuildRequires: cmake(Qt6ShaderTools) >= %{qt6_version}
BuildRequires: cmake(Qt6Sql) >= %{qt6_version}
BuildRequires: cmake(Qt6Svg) >= %{qt6_version}
BuildRequires: cmake(Qt6Test) >= %{qt6_version}
BuildRequires: cmake(Qt6WaylandClient) >= %{qt6_version}
BuildRequires: cmake(Qt6WaylandCompositor) >= %{qt6_version}
BuildRequires: cmake(Qt6Widgets) >= %{qt6_version}
BuildRequires: cmake(ScreenSaverDBusInterface) >= %{_plasma6_bugfix}
BuildRequires: cmake(packagekitqt6)
BuildRequires: pkgconfig(fontconfig)
BuildRequires: pkgconfig(icu-i18n)
BuildRequires: pkgconfig(icu-uc)
BuildRequires: pkgconfig(libcanberra)
BuildRequires: pkgconfig(libdrm)
BuildRequires: pkgconfig(libgps)
BuildRequires: pkgconfig(libpipewire-0.3)
BuildRequires: pkgconfig(libqalculate) >= 2.0
BuildRequires: pkgconfig(sm)
BuildRequires: pkgconfig(wayland-client) >= 1.15
BuildRequires: pkgconfig(wayland-protocols)
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xcb)
BuildRequires: pkgconfig(xcb-composite)
BuildRequires: pkgconfig(xcb-cursor)
BuildRequires: pkgconfig(xcb-damage)
BuildRequires: pkgconfig(xcb-image)
BuildRequires: pkgconfig(xcb-randr)
BuildRequires: pkgconfig(xcb-shm)
BuildRequires: pkgconfig(xcb-util)
BuildRequires: pkgconfig(xcb-xfixes)
BuildRequires: pkgconfig(xcursor)
BuildRequires: pkgconfig(xft)
BuildRequires: pkgconfig(xkbcommon)
BuildRequires: pkgconfig(xrender)
BuildRequires: pkgconfig(xtst)
BuildRequires: pkgconfig(zlib)
Requires: iso-codes
Requires: iso-codes-lang
Requires: plasma6-workspace-libs = %{version}-%{release}
# Needed for kcm_users
Requires: accountsservice
# contains default style, cursors, etc
Requires: breeze6 >= %{_plasma6_bugfix}
# Only recommended due to poor performances with LTO (https://sourceware.org/bugzilla/show_bug.cgi?id=23710)
Recommends: drkonqi6 >= %{_plasma6_bugfix}
# dialog/platformtheme/etc
Requires: kf6-frameworkintegration-plugin
Requires: kactivitymanagerd6
# used within startup
Requires: kde-cli-tools6 >= %{_plasma6_bugfix}
Requires: kf6-kded
Requires: kf6-kquickcharts
Requires: kglobalacceld6 >= %{_plasma6_bugfix}
Requires: kirigami-addons6 >= 0.10.0
Requires: kscreen6 >= %{_plasma6_bugfix}
Requires: kscreenlocker6 >= %{_plasma6_bugfix}
Requires: kwin6 >= %{_plasma6_bugfix}
Requires: libkscreen6-plugin >= %{_plasma6_bugfix}
Requires: qt6-positioning-imports >= %{qt6_version}
Requires: qt6-tools-qdbus
# heavily used by plasma
Requires: qt6-declarative-imports >= %{qt6_version}
Requires: kf6-kconfig-imports
# needed by krunner
Requires: milou6 >= %{_plasma6_bugfix}
Requires: qt6-sql-sqlite >= %{qt6_version}
Recommends: ocean-sound-theme6 >= %{_plasma6_bugfix}
# Used by KCMs
Requires: kf6-knewstuff-imports >= %{kf6_version}
# Used by system monitoring applets
Requires: ksystemstats6
# Used by the user feedback KCM
Requires: kf6-kuserfeedback-imports
# krdb uses xrdb with cpp preprocessing
Requires: cpp
Requires: xrdb
Requires: xsetroot
# Used by the zsh completion script
Requires: %{_bindir}/grep
# Qt6 SDDM greeter
Requires: (sddm-greeter-qt6 if sddm)
# For wallpaper thumbnails
# Not to be mistaken for kio-extras5
Requires: kio-extras
# Required by the night and day KCM
Requires: knighttime6 >= %{_plasma6_bugfix}
# Hardcode versions of libplasma6-components, as upstream doesn't keep backwards compability there
%requires_ge libplasma6-components
# The lockscreen has a button to open a virtual keyboard
Recommends: qt6-virtualkeyboard-imports >= %{qt6_version}
# For dmenudbusmenuproxy
Recommends: (appmenu-gtk2-module if libgtk-2_0-0)
Recommends: (appmenu-gtk3-module if libgtk-3-0)
# plasma6-desktop 'Provides' kdebase4-workspace < 5.3.0
Conflicts: kdebase4-workspace < 5.3.0
Provides: plasma5-workspace = %{version}
Obsoletes: plasma5-workspace < %{version}
Obsoletes: plasma5-workspace-lang < %{version}
# Use to be a separate package in plasma5
Provides: gmenudbusmenuproxy = %{version}
Obsoletes: gmenudbusmenuproxy < %{version}
# If installed, it force-enables itself which can cause issues
# gmenudbusmenuproxy used to conflict with this package
Conflicts: unity-gtk-module-common
# Use to be a separate package in plasma5
Provides: xembedsniproxy = %{version}
Obsoletes: xembedsniproxy < %{version}
# Used to be provided/obsoleted by xembedsniproxy
Provides: xembed-sni-proxy = %{version}
Obsoletes: xembed-sni-proxy < %{version}
# Dropped functionality
Obsoletes: khotkeys5 < %{version}
Obsoletes: khotkeys5-lang < %{version}
Obsoletes: ksysguard5 < %{version}
Obsoletes: ksysguard5-lang < %{version}
# Some files have been moved from kio-extras5 to plasma5-workspace in 5.4. This should prevent a possible file conflict. (boo#944656)
Conflicts: kio-extras5 < 15.08.0
Provides: plasma6-workspace-branding = %{_plasma6_bugfix}
Provides: plasma6-workspace-branding-upstream = %{version}
# plasmashell implements the dbus interface org.freedesktop.Notifications directly
Provides: dbus(org.freedesktop.Notifications)
Provides: qt6qmlimport(org.kde.plasma.shell)
Provides: qt6qmlimport(org.kde.plasma.shell.2) = 0
Provides: qt6qmlimport(org.kde.plasma.shell.panel)
Provides: qt6qmlimport(org.kde.plasma.shell.panel.0) = 1
# Was dropped in 5.20, replaced by kcm_users from p-d
Provides: kde-user-manager = %{version}
Obsoletes: kde-user-manager < %{version}
%description
This package contains the basic packages for a Plasma workspace.
%package libs
Summary: The KDE Plasma Workspace Components
Requires: plasma6-framework >= %{_plasma6_bugfix}
Provides: plasma5-workspace-libs = %{version}
Obsoletes: plasma5-workspace-libs < %{version}
%description libs
This package contains the basic packages for a KDE Plasma 6 workspace.
%package devel
Summary: The KDE Plasma Workspace Components
Requires: plasma6-workspace-libs = %{version}-%{release}
Requires: cmake(KF6ItemModels) >= %{kf6_version}
Requires: cmake(LayerShellQt) >= %{_plasma6_bugfix}
Requires: cmake(Plasma) >= %{_plasma6_bugfix}
Requires: cmake(Qt6Core) >= %{qt6_version}
Requires: cmake(Qt6Gui) >= %{qt6_version}
Requires: cmake(Qt6Quick) >= %{qt6_version}
Conflicts: kapptemplate <= 16.03.80
Provides: plasma5-workspace-devel = %{version}
Obsoletes: plasma5-workspace-devel < %{version}
%description devel
This package contains the basic packages for a KDE Plasma 6 workspace.
Development files.
%package -n plasma6-session
Summary: KDE Plasma 6 Session
Requires: breeze6 >= %{_plasma6_bugfix}
Requires: breeze6-decoration >= %{_plasma6_bugfix}
Requires: kf6-kwindowsystem >= %{kf6_version}
Requires: plasma6-desktop >= %{_plasma6_bugfix}
Requires: plasma6-workspace >= %{_plasma6_bugfix}
Requires: polkit-kde-agent-6 >= %{_plasma6_bugfix}
Requires: powerdevil6 >= %{_plasma6_bugfix}
Requires: systemsettings6 >= %{_plasma6_bugfix}
# For KF5 kwayland (!)
Requires: (kwayland-integration6 if kwayland)
Requires: qt6-wayland
Requires: (libqt5-qtwayland if libQt5Gui5)
# For screen sharing and window thumbnails in plasmashell
Requires: pipewire
Requires: xdg-user-dirs
Requires: xorg-x11-server-wayland
Provides: kdebase4-session = %{version}
Obsoletes: kdebase4-session < %{version}
Provides: plasma5-session = %{version}
Obsoletes: plasma5-session < %{version}
Provides: plasma5-session-wayland = %{version}
Obsoletes: plasma5-session-wayland < %{version}
# People may want the X11 session
Recommends: plasma6-session-x11 = %{version}
BuildArch: noarch
%description -n plasma6-session
This package contains the startup scripts necessary to start a KDE
Plasma 6 session.
%package -n plasma6-session-x11
Summary: KDE Plasma 6 Session on X11
Requires: kwin6-x11 >= %{_plasma6_bugfix}
Requires: plasma6-session = %{version}
Requires: xf86-input-libinput
Requires: xorg-x11-server
Requires(post): update-alternatives
Requires(postun): update-alternatives
%description -n plasma6-session-x11
This package contains the startup scripts and programs necessary to
start a KDE Plasma 6 session on X11.
%package -n sddm-qt6-branding-openSUSE
Summary: Plasma 6 branding for SDDM
Requires: plasma6-sddm-theme-openSUSE
Requires: sddm-greeter-qt6
Supplements: (%{name} and sddm)
%description -n sddm-qt6-branding-openSUSE
This package confirms defaults for SDDM suitable for Plasma 6.
%lang_package
%prep
%autosetup -p1 -n %{rname}-%{version}
%build
%cmake_kf6 \
-DGLIBC_LOCALE_GENERATED:BOOL=TRUE \
-DGLIBC_LOCALE_GEN:BOOL=FALSE \
-DPLASMA_X11_DEFAULT_SESSION:BOOL=TRUE
%kf6_build
%install
%kf6_install
%find_lang %{name} --with-html --all-name
# Copy the icon for org.kde.kcolorschemeeditor.desktop
mkdir -p %{buildroot}%{_kf6_iconsdir}/hicolor/32x32/apps/
cp %{_kf6_iconsdir}/breeze/preferences/32/preferences-desktop-color.svg %{buildroot}%{_kf6_iconsdir}/hicolor/32x32/apps/
# Rename upstream session file to oS location
mv %{buildroot}%{_kf6_sharedir}/xsessions/{plasma,plasma6}.desktop
# Install compatibility symlink
ln -s %{_kf6_sharedir}/xsessions/plasma6.desktop %{buildroot}%{_kf6_sharedir}/xsessions/kde-plasma.desktop
mkdir -p %{buildroot}%{_sysconfdir}/alternatives
touch %{buildroot}%{_sysconfdir}/alternatives/default-xsession.desktop
ln -s %{_sysconfdir}/alternatives/default-xsession.desktop %{buildroot}%{_datadir}/xsessions/default.desktop
install -Dm 0644 %{SOURCE3} %{buildroot}%{_prefix}/lib/sddm/sddm.conf.d/10-plasma.conf
install -Dm 0644 %{SOURCE4} %{buildroot}%{_userunitdir}/plasma-plasmashell.service.d/waitforkded.conf
%fdupes %{buildroot}%{_prefix}
%post
%ldconfig
%{systemd_user_post plasma-gmenudbusmenuproxy.service plasma-kcminit-phase1.service plasma-kcminit.service \
plasma-krunner.service plasma-ksmserver.service plasma-plasmashell.service \
plasma-xembedsniproxy.service plasma-baloorunner.service plasma-restoresession.service plasma-ksplash.service}
%preun
%{systemd_user_preun plasma-gmenudbusmenuproxy.service plasma-kcminit-phase1.service plasma-kcminit.service \
plasma-krunner.service plasma-ksmserver.service plasma-plasmashell.service \
plasma-xembedsniproxy.service plasma-baloorunner.service plasma-restoresession.service plasma-ksplash.service}
%postun
%ldconfig
%{systemd_user_postun plasma-gmenudbusmenuproxy.service plasma-kcminit-phase1.service plasma-kcminit.service \
plasma-krunner.service plasma-ksmserver.service plasma-plasmashell.service \
plasma-xembedsniproxy.service plasma-baloorunner.service plasma-restoresession.service plasma-ksplash.service}
%ldconfig_scriptlets libs
%post -n plasma6-session-x11
%{_sbindir}/update-alternatives --install %{_datadir}/xsessions/default.desktop \
default-xsession.desktop %{_datadir}/xsessions/plasma6.desktop 25
%postun -n plasma6-session-x11
[ -f %{_datadir}/xsessions/plasma6.desktop ] || %{_sbindir}/update-alternatives \
--remove default-xsession.desktop %{_datadir}/xsessions/plasma6.desktop
%files
%license LICENSES/*
%dir %{_kf6_configdir}/menus
%config %{_kf6_configdir}/menus/plasma-applications.menu
%config %{_kf6_configdir}/plasmanotifyrc
%config %{_kf6_configdir}/taskmanagerrulesrc
%doc %lang(en) %{_kf6_htmldir}/en/PolicyKit-kde/
%doc %lang(en) %{_kf6_htmldir}/en/kcontrol/
%doc %lang(en) %{_kf6_htmldir}/en/klipper/
%exclude %{_kf6_libdir}/libkfontinst.so
%exclude %{_kf6_libdir}/libkfontinstui.so
%dir %{_datadir}/zsh
%dir %{_datadir}/zsh/site-functions
%{_datadir}/zsh/site-functions/_plasmashell
%{_datadir}/zsh/site-functions/_krunner
%{_kf6_applicationsdir}/kcm_autostart.desktop
%{_kf6_applicationsdir}/kcm_componentchooser.desktop
%{_kf6_applicationsdir}/kcm_colors.desktop
%{_kf6_applicationsdir}/kcm_cursortheme.desktop
%{_kf6_applicationsdir}/kcm_desktoptheme.desktop
%{_kf6_applicationsdir}/kcm_feedback.desktop
%{_kf6_applicationsdir}/kcm_fontinst.desktop
%{_kf6_applicationsdir}/kcm_fonts.desktop
%{_kf6_applicationsdir}/kcm_icons.desktop
%{_kf6_applicationsdir}/kcm_lookandfeel.desktop
%{_kf6_applicationsdir}/kcm_nightlight.desktop
%{_kf6_applicationsdir}/kcm_nighttime.desktop
%{_kf6_applicationsdir}/kcm_notifications.desktop
%{_kf6_applicationsdir}/kcm_regionandlang.desktop
%{_kf6_applicationsdir}/kcm_soundtheme.desktop
%{_kf6_applicationsdir}/kcm_style.desktop
%{_kf6_applicationsdir}/kcm_users.desktop
%{_kf6_applicationsdir}/kcm_wallpaper.desktop
%{_kf6_applicationsdir}/org.kde.plasma-interactiveconsole.desktop
%{_kf6_applicationsdir}/org.kde.kcolorschemeeditor.desktop
%{_kf6_applicationsdir}/org.kde.kfontinst.desktop
%{_kf6_applicationsdir}/org.kde.kfontview.desktop
%{_kf6_applicationsdir}/org.kde.klipper.desktop
%{_kf6_applicationsdir}/org.kde.plasma-fallback-session-save.desktop
%{_kf6_applicationsdir}/org.kde.plasmashell.desktop
%{_kf6_applicationsdir}/org.kde.plasmawindowed.desktop
%{_kf6_bindir}/gmenudbusmenuproxy
%{_kf6_bindir}/kcminit
%{_kf6_bindir}/kcminit_startup
%{_kf6_bindir}/kcolorschemeeditor
%{_kf6_bindir}/kde-systemd-start-condition
%{_kf6_bindir}/kfontinst
%{_kf6_bindir}/kfontview
%{_kf6_bindir}/krunner
%{_kf6_bindir}/ksmserver
%{_kf6_bindir}/ksplashqml
%{_kf6_bindir}/lookandfeeltool
%{_kf6_bindir}/plasma-apply-colorscheme
%{_kf6_bindir}/plasma-apply-cursortheme
%{_kf6_bindir}/plasma-apply-desktoptheme
%{_kf6_bindir}/plasma-apply-lookandfeel
%{_kf6_bindir}/plasma-apply-wallpaperimage
%{_kf6_bindir}/plasma-interactiveconsole
%{_kf6_bindir}/plasma-shutdown
%{_kf6_bindir}/plasma_session
%{_kf6_bindir}/plasma_waitforname
%{_kf6_bindir}/plasmashell
%{_kf6_bindir}/plasmawindowed
%{_kf6_bindir}/startplasma-wayland
%{_kf6_bindir}/xembedsniproxy
%{_kf6_configdir}/autostart/gmenudbusmenuproxy.desktop
%{_kf6_configdir}/autostart/org.kde.plasma-fallback-session-restore.desktop
%{_kf6_configdir}/autostart/org.kde.plasmashell.desktop
%{_kf6_configdir}/autostart/xembedsniproxy.desktop
%{_kf6_configkcfgdir}/colorssettings.kcfg
%{_kf6_configkcfgdir}/cursorthemesettings.kcfg
%{_kf6_configkcfgdir}/feedbacksettings.kcfg
%{_kf6_configkcfgdir}/fontssettings.kcfg
%{_kf6_configkcfgdir}/freespacenotifier.kcfg
%{_kf6_configkcfgdir}/iconssettingsbase.kcfg
%{_kf6_configkcfgdir}/launchfeedbacksettings.kcfg
%{_kf6_configkcfgdir}/lookandfeelsettings.kcfg
%{_kf6_configkcfgdir}/stylesettings.kcfg
%{_kf6_debugdir}/*.categories
%{_kf6_iconsdir}/hicolor/*/apps/kfontview.png
%{_kf6_iconsdir}/hicolor/*/mimetypes/fonts-package.png
%{_kf6_iconsdir}/hicolor/32x32/apps/preferences-desktop-color.svg
%{_kf6_iconsdir}/hicolor/scalable/apps/preferences-desktop-font-installer.svgz
%{_kf6_knsrcfilesdir}/colorschemes.knsrc
%{_kf6_knsrcfilesdir}/gtk_themes.knsrc
%{_kf6_knsrcfilesdir}/icons.knsrc
%{_kf6_knsrcfilesdir}/kfontinst.knsrc
%{_kf6_knsrcfilesdir}/lookandfeel.knsrc
%{_kf6_knsrcfilesdir}/plasma-themes.knsrc
%{_kf6_knsrcfilesdir}/plasmoids.knsrc
%{_kf6_knsrcfilesdir}/wallpaper-mobile.knsrc
%{_kf6_knsrcfilesdir}/wallpaper.knsrc
%{_kf6_knsrcfilesdir}/wallpaperplugin.knsrc
%{_kf6_knsrcfilesdir}/xcursor.knsrc
%{_kf6_kxmlguidir}/kfontview/
%{_kf6_kxmlguidir}/kfontviewpart/
%{_kf6_libdir}/kconf_update_bin/krunnerglobalshortcuts
%{_kf6_libdir}/kconf_update_bin/krunnerhistory
%{_kf6_libdir}/kconf_update_bin/plasma6.0-remove-dpi-settings
%{_kf6_libdir}/kconf_update_bin/plasma6.0-remove-old-shortcuts
%{_kf6_libdir}/kconf_update_bin/plasma6.3-update-clipboard-database-2-to-3
%{_kf6_libdir}/kconf_update_bin/plasma6.4-migrate-fullscreen-notifications-to-dnd
%{_kf6_libdir}/kconf_update_bin/plasmashell-6.0-keep-custom-position-of-panels
%{_kf6_libdir}/kconf_update_bin/plasmashell-6.0-keep-default-floating-setting-for-plasma-5-panels
%{_kf6_libdir}/kconf_update_bin/plasmashell-6.5-remove-stop-activity-shortcut
%{_kf6_libdir}/libkfontinst.so.*
%{_kf6_libdir}/libkfontinstui.so.*
%{_kf6_notificationsdir}/devicenotifications.notifyrc
%{_kf6_notificationsdir}/donationmessage.notifyrc
%{_kf6_notificationsdir}/freespacenotifier.notifyrc
%{_kf6_notificationsdir}/libnotificationmanager.notifyrc
%{_kf6_notificationsdir}/oom-notifier.notifyrc
%{_kf6_notificationsdir}/phonon.notifyrc
%{_kf6_plasmadir}/avatars/
%{_kf6_plasmadir}/look-and-feel/
%{_kf6_plasmadir}/plasmoids/
%{_kf6_plasmadir}/wallpapers/
%{_kf6_plugindir}/kf6/kded/
%{_kf6_plugindir}/kf6/kfileitemaction/
%{_kf6_plugindir}/kf6/kio/
%{_kf6_plugindir}/kf6/krunner/
%{_kf6_plugindir}/kf6/packagestructure/
%{_kf6_plugindir}/kf6/parts/
%{_kf6_plugindir}/kf6/thumbcreator/
%{_kf6_plugindir}/phonon_platform/
%{_kf6_plugindir}/plasma/
%{_kf6_plugindir}/plasma5support/
%{_kf6_plugindir}/plasmacalendarplugins/
%{_kf6_qmldir}/org/kde/breeze/
%{_kf6_qmldir}/org/kde/notificationmanager/
%{_kf6_qmldir}/org/kde/plasma/
%{_kf6_qmldir}/org/kde/taskmanager/
%{_kf6_sharedir}/dbus-1/services/org.kde.KSplash.service
%{_kf6_sharedir}/dbus-1/services/org.kde.LogoutPrompt.service
%{_kf6_sharedir}/dbus-1/services/org.kde.Shutdown.service
%{_kf6_sharedir}/dbus-1/services/org.kde.fontinst.service
%{_kf6_sharedir}/dbus-1/services/org.kde.krunner.service
%{_kf6_sharedir}/dbus-1/services/org.kde.plasma.Notifications.service
%{_kf6_sharedir}/dbus-1/services/org.kde.runners.baloo.service
%{_kf6_sharedir}/dbus-1/system-services/org.kde.fontinst.service
%{_kf6_sharedir}/dbus-1/system.d/org.kde.fontinst.conf
%{_kf6_sharedir}/desktop-directories/
%{_kf6_sharedir}/kconf_update/
%{_kf6_sharedir}/kfontinst/
%{_kf6_sharedir}/kglobalaccel/org.kde.krunner.desktop
%dir %{_kf6_sharedir}/kio
%dir %{_kf6_sharedir}/kio/servicemenus
%{_kf6_sharedir}/kio/servicemenus/installfont.desktop
%{_kf6_sharedir}/kio_desktop/
%{_kf6_sharedir}/konqsidebartng/
%{_kf6_sharedir}/krunner/dbusplugins/plasma-runner-baloosearch.desktop
%{_kf6_sharedir}/kstyle/
%{_kf6_sharedir}/plasma5support/
%{_kf6_sharedir}/polkit-1/actions/org.kde.fontinst.policy
%{_kf6_sharedir}/solid/
%dir %{_kf6_sharedir}/timezonefiles/
%{_kf6_sharedir}/timezonefiles/timezones.json
%dir %{_kf6_sharedir}/xdg-desktop-portal/
%{_kf6_sharedir}/xdg-desktop-portal/kde-portals.conf
%{_libexecdir}/baloorunner
%{_kf6_libexecdir}/kauth/fontinst
%{_kf6_libexecdir}/kauth/fontinst_helper
%{_kf6_libexecdir}/kauth/fontinst_x11
%{_libexecdir}/kfontprint
%{_libexecdir}/ksmserver-logout-greeter
%{_libexecdir}/plasma-changeicons
%{_libexecdir}/plasma-dbus-run-session-if-needed
%{_libexecdir}/plasma-fallback-session-restore
%{_libexecdir}/plasma-fallback-session-save
%{_libexecdir}/plasma-sourceenv.sh
%{_userunitdir}/plasma-baloorunner.service
%{_userunitdir}/plasma-core.target
%{_userunitdir}/plasma-gmenudbusmenuproxy.service
%{_userunitdir}/plasma-kcminit-phase1.service
%{_userunitdir}/plasma-kcminit.service
%{_userunitdir}/plasma-krunner.service
%{_userunitdir}/plasma-ksmserver.service
%{_userunitdir}/plasma-ksplash.service
%{_userunitdir}/plasma-plasmashell.service
%dir %{_userunitdir}/plasma-plasmashell.service.d/
%{_userunitdir}/plasma-plasmashell.service.d/waitforkded.conf
%{_userunitdir}/plasma-restoresession.service
%{_userunitdir}/plasma-workspace-{wayland,x11}.target
%{_userunitdir}/plasma-workspace.target
%{_userunitdir}/plasma-xembedsniproxy.service
%files libs
%license LICENSES/*
%{_kf6_libdir}/libbatterycontrol.so.*
%{_kf6_libdir}/libklipper.so.*
%{_kf6_libdir}/libklookandfeel.so.*
%{_kf6_libdir}/libkmpris.so.*
%{_kf6_libdir}/libkrdb.so
%{_kf6_libdir}/libkworkspace6.so.*
%{_kf6_libdir}/libnotificationmanager.so.*
%{_kf6_libdir}/libtaskmanager.so.*
%files devel
%license LICENSES/*
%{_includedir}/klookandfeel/
%{_includedir}/krdb/
%{_includedir}/kworkspace6/
%{_includedir}/notificationmanager/
%{_includedir}/taskmanager/
%{_kf6_libdir}/cmake/Krdb/
%{_kf6_libdir}/cmake/KRunnerAppDBusInterface/
%{_kf6_libdir}/cmake/KSMServerDBusInterface/
%{_kf6_libdir}/cmake/LibKLookAndFeel/
%{_kf6_libdir}/cmake/LibKWorkspace/
%{_kf6_libdir}/cmake/LibNotificationManager/
%{_kf6_libdir}/cmake/LibTaskManager/
%{_kf6_libdir}/libbatterycontrol.so
%{_kf6_libdir}/libklipper.so
%{_kf6_libdir}/libklookandfeel.so
%{_kf6_libdir}/libkworkspace6.so
%{_kf6_libdir}/libnotificationmanager.so
%{_kf6_libdir}/libtaskmanager.so
%{_kf6_sharedir}/dbus-1/interfaces/
%files -n plasma6-session
%license LICENSES/*
%dir %{_datadir}/wayland-sessions/
%{_kf6_sharedir}/wayland-sessions/plasmawayland.desktop
%files -n plasma6-session-x11
%{_kf6_bindir}/startplasma-x11
%ghost %{_sysconfdir}/alternatives/default-xsession.desktop
%{_kf6_sharedir}/xsessions/default.desktop
%{_kf6_sharedir}/xsessions/kde-plasma.desktop
%{_kf6_sharedir}/xsessions/plasma6.desktop
%files -n sddm-qt6-branding-openSUSE
%dir %{_prefix}/lib/sddm/
%dir %{_prefix}/lib/sddm/sddm.conf.d/
%{_prefix}/lib/sddm/sddm.conf.d/10-plasma.conf
%files lang -f %{name}.lang
%exclude %{_kf6_htmldir}/en/PolicyKit-kde
%exclude %{_kf6_htmldir}/en/kcontrol
%exclude %{_kf6_htmldir}/en/klipper
%changelog

View File

@@ -0,0 +1,9 @@
[General]
GreeterEnvironment=QT_WAYLAND_SHELL_INTEGRATION=layer-shell
[Theme]
Current=breeze-openSUSE
CursorTheme=breeze_cursors
[Wayland]
CompositorCommand=kwin_wayland --no-global-shortcuts --no-lockscreen --locale1

View File

@@ -0,0 +1,3 @@
[Service]
# Wait for kded to be up, which implies that kconf_update is done (kde#483136)
ExecStartPre=/bin/sh -c "exec /usr/bin/qdbus6 org.kde.kded6 /kded org.kde.kded6.loadedModules >/dev/null"

View File

@@ -0,0 +1,14 @@
<services>
<service name="obs_scm" mode="disabled">
<param name="url">https://gitlab.com/nicolasfella/signon-plugin-oauth2.git</param>
<param name="scm">git</param>
<param name="revision">qt6</param>
<param name="versionformat">0.25git.%ci~%h</param>
</service>
<service name="set_version" mode="disabled" />
<service name="tar" mode="buildtime"/>
<service name="recompress" mode="buildtime">
<param name="file">*.tar</param>
<param name="compression">xz</param>
</service>
</services>

View File

@@ -0,0 +1,64 @@
Name: signon-plugin-oauth2
Version: 0.25git.20231124T142245~fab6988
Release: 0
Summary: Oauth2 plugin for the Single Sign On Framework
License: LGPL-2.0-only
URL: https://gitlab.com/accounts-sso/signon-plugin-oauth2
Source: %{name}-%{version}.tar.xz
BuildRequires: pkgconfig
BuildRequires: pkgconfig(libsignon-qt6)
BuildRequires: pkgconfig(signon-plugins)
BuildRequires: pkgconfig(Qt6Core)
BuildRequires: pkgconfig(Qt6Network)
BuildRequires: pkgconfig(Qt6Test)
# Needs QtWebengine
%ifarch x86_64 aarch64 riscv64
Requires: signon-ui
%endif
%description
This package contains the Oauth2 plugin for the Single Sign On Framework.
%package devel
Summary: Development files for signon-plugin-oauth2
Requires: %{name} = %{version}
%description devel
This package contains the development files for the Oauth2 plugin for the Single
Sign On Framework.
%prep
%autosetup -p1
sed -i 's#/lib#/%{_lib}#g' src/signon-oauth2plugin.pc
sed -i 's#lib/#%{_lib}/#' src/src.pro
%build
# Reminder: adding build flavors is not needed for signon plugins
# See signon spec file for details
%qmake6 \
LIBDIR=%{_libdir} \
QMAKE_CXXFLAGS+="-Wno-error=deprecated-declarations"
%qmake6_build
%install
%qmake6_install
# Remove examples and tests
rm -r %{buildroot}%{_bindir} %{buildroot}%{_datadir}
%files
%license COPYING
%doc README.md
%dir %{_qt6_libdir}/signon/
%{_qt6_libdir}/signon/liboauth2plugin.so
%files devel
%dir %{_includedir}/signon-plugins/
%{_includedir}/signon-plugins/*.h
%{_qt6_pkgconfigdir}/signon-oauth2plugin.pc
%changelog