Files
desktop/plasma6-integration/plasma6-integration.spec
2026-02-27 11:16:06 +08:00

104 lines
3.6 KiB
RPMSpec

# SPDX-FileCopyrightText: (C) 2025 Institute of Software, Chinese Academy of Sciences (ISCAS)
# SPDX-FileCopyrightText: (C) 2025 openRuyi Project Contributors
# SPDX-FileContributor: jingyupu <pujingyu@iscas.ac.cn>
#
# SPDX-License-Identifier: MulanPSL-2.0
%define kf6_version 6.18.0
%define qt6_version 6.9.0
%bcond_without released
%define rname plasma-integration
Name: plasma6-integration
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: Plugins responsible for better integration of Qt applications in KDE Workspace
License: GPL-2.0-or-later
URL: https://www.kde.org
Source: https://download.kde.org/stable/plasma/%{version}/%{rname}-%{version}.tar.xz
BuildRequires: kf6-extra-cmake-modules >= %{kf6_version}
BuildRequires: pkgconfig
BuildRequires: qt6-qtbase-private-devel >= %{qt6_version}
BuildRequires: cmake(Breeze) >= %{_plasma6_bugfix}
BuildRequires: cmake(KF6ColorScheme) >= %{kf6_version}
BuildRequires: cmake(KF6Config) >= %{kf6_version}
BuildRequires: cmake(KF6ConfigWidgets) >= %{kf6_version}
BuildRequires: cmake(KF6GuiAddons) >= %{kf6_version}
BuildRequires: cmake(KF6I18n) >= %{kf6_version}
BuildRequires: cmake(KF6IconThemes) >= %{kf6_version}
BuildRequires: cmake(KF6KIO) >= %{kf6_version}
BuildRequires: cmake(KF6Notifications) >= %{kf6_version}
BuildRequires: cmake(KF6StatusNotifierItem) >= %{kf6_version}
BuildRequires: cmake(KF6WidgetsAddons) >= %{kf6_version}
BuildRequires: cmake(KF6WindowSystem) >= %{kf6_version}
BuildRequires: cmake(KF6XmlGui) >= %{kf6_version}
BuildRequires: cmake(KWayland) >= %{_plasma6_bugfix}
BuildRequires: cmake(PlasmaWaylandProtocols)
BuildRequires: cmake(Qt6DBus) >= %{qt6_version}
BuildRequires: cmake(Qt6QuickControls2) >= %{qt6_version}
BuildRequires: cmake(Qt6WaylandClient) >= %{qt6_version}
BuildRequires: cmake(Qt6Widgets) >= %{qt6_version}
BuildRequires: pkgconfig(wayland-client)
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xcb)
BuildRequires: pkgconfig(xcursor)
%description
Plasma Integration is a set of plugins responsible for better integration of Qt
applications when running on a KDE Plasma workspace.
Applications do not need to link to this directly.
%package plugin
Summary: Plugins responsible for better integration of Qt applications in KDE Workspace
Requires: hack-fonts
Requires: noto-sans
Requires: xdg-desktop-portal-kde6
# Forced on all QGuiApplications
Requires: qqc2-breeze-style6
Requires: libQt6Gui6 >= %{qt6_version}
Provides: plasma5-integration-plugin < %{version}
Obsoletes: plasma5-integration-plugin < %{version}
Obsoletes: plasma5-integration-plugin-lang < %{version}
%description plugin
Plasma Integration is a set of plugins responsible for better integration of Qt
applications when running on a KDE Plasma workspace.
Applications do not need to link to this directly.
%prep
%autosetup -p1 -n %{rname}-%{version}
%build
%cmake_kf6 \
-DBUILD_QT6:BOOL=TRUE \
%if %{with plasma5}
-DBUILD_QT5:BOOL=TRUE
%else
-DBUILD_QT5:BOOL=FALSE
%endif
%kf6_build
%install
%kf6_install
%find_lang plasmaintegration5
%files plugin -f plasmaintegration5.lang
%license LICENSES/*
%if %{with plasma5}
%{_kf5_plugindir}/platformthemes
%{_kf5_plugindir}/platformthemes/KDEPlasmaPlatformTheme5.so
%endif
%dir %{_kf6_plugindir}/platformthemes
%{_kf6_plugindir}/platformthemes/KDEPlasmaPlatformTheme6.so
%changelog