Files
desktop/plasma6-integration/plasma6-integration.spec

95 lines
3.4 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
# 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}')}
%define rname plasma-integration
Name: plasma6-integration
Version: 6.5.5
Release: 0
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.
# Requires: hack-fonts
Requires: fonts-noto-sans-cjk
Requires: xdg-desktop-portal-kde
# Forced on all QGuiApplications
Requires: qqc2-breeze-style
Requires: qt6-qtbase-private-devel >= %{qt6_version}
Provides: plasma6-integration-plugin = %{version}-%{release}
Provides: plasma5-integration-plugin < %{version}
Obsoletes: plasma5-integration-plugin < %{version}
Obsoletes: plasma5-integration-plugin-lang < %{version}
%prep
%autosetup -p1 -n %{rname}-%{version}
%build
%cmake_kf6 \
-DBUILD_QT6:BOOL=TRUE \
-DBUILD_QT5:BOOL=FALSE
%kf6_build
%install
%kf6_install
# todo: fix the name error.
# Avoid illegal package names
rm -rf $RPM_BUILD_ROOT%{_datadir}/locale/*@*
rm -rf $RPM_BUILD_ROOT%{_datadir}/locale/en_GB/
# Use langpacks macro to auto-split translations
%find_lang plasmaintegration5 --with-qt --all-name --generate-subpackages
%files
%license LICENSES/*
%dir %{_kf6_plugindir}/platformthemes
%{_kf6_plugindir}/platformthemes/KDEPlasmaPlatformTheme6.so
%changelog