332 lines
12 KiB
RPMSpec
332 lines
12 KiB
RPMSpec
|
|
|
|
|
|
%define kf6_version 6.18.0
|
|
%define qt6_version 6.9.0
|
|
|
|
%define rname plasma-nm
|
|
# 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}')}
|
|
|
|
%ifnarch %ix86 %arm ppc64 ppc64le s390x
|
|
# QtWebEngine is required if the openconnect plugin is built
|
|
%bcond_without openconnect
|
|
%endif
|
|
Name: plasma6-nm
|
|
Version: 6.5.5
|
|
Release: 0
|
|
Summary: Plasma applet written in QML for managing network connections
|
|
License: (GPL-2.0-only OR GPL-3.0-only) AND (LGPL-2.1-only OR LGPL-3.0-only)
|
|
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}
|
|
BuildRequires: pkgconfig
|
|
BuildRequires: cmake(KF6ColorScheme) >= %{kf6_version}
|
|
BuildRequires: cmake(KF6Completion) >= %{kf6_version}
|
|
BuildRequires: cmake(KF6CoreAddons) >= %{kf6_version}
|
|
BuildRequires: cmake(KF6DBusAddons) >= %{kf6_version}
|
|
BuildRequires: cmake(KF6Declarative) >= %{kf6_version}
|
|
BuildRequires: cmake(KF6I18n) >= %{kf6_version}
|
|
BuildRequires: cmake(KF6KCMUtils) >= %{kf6_version}
|
|
BuildRequires: cmake(KF6KIO) >= %{kf6_version}
|
|
BuildRequires: cmake(KF6KirigamiPlatform) >= %{kf6_version}
|
|
BuildRequires: cmake(KF6ModemManagerQt) >= %{kf6_version}
|
|
BuildRequires: cmake(KF6NetworkManagerQt) >= %{kf6_version}
|
|
BuildRequires: cmake(KF6Notifications) >= %{kf6_version}
|
|
BuildRequires: cmake(KF6Service) >= %{kf6_version}
|
|
BuildRequires: cmake(KF6Solid) >= %{kf6_version}
|
|
BuildRequires: cmake(KF6Svg) >= %{kf6_version}
|
|
BuildRequires: cmake(KF6Wallet) >= %{kf6_version}
|
|
BuildRequires: cmake(KF6WidgetsAddons) >= %{kf6_version}
|
|
BuildRequires: cmake(KF6WindowSystem) >= %{kf6_version}
|
|
BuildRequires: cmake(Plasma) >= %{_plasma6_bugfix}
|
|
BuildRequires: cmake(QCoro6Core)
|
|
BuildRequires: cmake(QCoro6DBus)
|
|
BuildRequires: cmake(Qca-qt6) >= 2.1.0
|
|
BuildRequires: cmake(Qt6Core) >= %{qt6_version}
|
|
BuildRequires: cmake(Qt6DBus) >= %{qt6_version}
|
|
BuildRequires: cmake(Qt6Gui) >= %{qt6_version}
|
|
BuildRequires: cmake(Qt6Network) >= %{qt6_version}
|
|
BuildRequires: cmake(Qt6Quick) >= %{qt6_version}
|
|
BuildRequires: cmake(Qt6QuickWidgets) >= %{qt6_version}
|
|
BuildRequires: cmake(Qt6UiTools) >= %{qt6_version}
|
|
%if %{with openconnect}
|
|
BuildRequires: cmake(Qt6WebEngineWidgets) >= %{qt6_version}
|
|
%endif
|
|
BuildRequires: pkgconfig(libnm) >= 1.4.0
|
|
BuildRequires: pkgconfig(mobile-broadband-provider-info)
|
|
%if %{with openconnect}
|
|
BuildRequires: pkgconfig(openconnect) >= 5.2
|
|
%endif
|
|
Requires: NetworkManager
|
|
Requires: kf6-kded
|
|
Requires: kf6-kirigami >= %{kf6_version}
|
|
Requires: kf6-networkmanager-qt-imports >= %{kf6_version}
|
|
Requires: kf6-prison-imports >= %{kf6_version}
|
|
Requires: kwalletd6
|
|
# The KCM desktop files launch systemsettings
|
|
Requires: systemsettings
|
|
Recommends: mobile-broadband-provider-info
|
|
Supplements: (plasma-desktop and NetworkManager)
|
|
Provides: plasma-nm-kf5 = %{version}
|
|
Obsoletes: plasma-nm-kf5 < %{version}
|
|
Provides: plasma-nm5 = %{version}
|
|
Obsoletes: plasma-nm5 < %{version}
|
|
Obsoletes: plasma-nm5-lang < %{version}
|
|
Provides: NetworkManager-client
|
|
|
|
%description
|
|
Plasma applet for controlling network connections on systems
|
|
that use the NetworkManager service.
|
|
|
|
%package openvpn
|
|
Summary: OpenVPN support for plasma6-nm
|
|
Requires: NetworkManager-openvpn
|
|
Requires: plasma6-nm = %{version}
|
|
Supplements: (plasma6-nm and NetworkManager-openvpn)
|
|
Provides: NetworkManager-openvpn-frontend
|
|
Provides: plasma-nm5-openvpn = %{version}
|
|
Obsoletes: plasma-nm5-openvpn < %{version}
|
|
# Old names provided / Obsoleted by plasma-nm5
|
|
Provides: plasma-nm-openvpn = %{version}
|
|
Obsoletes: plasma-nm-openvpn < %{version}
|
|
|
|
%description openvpn
|
|
OpenVPN plugin for plasma-nm components.
|
|
|
|
%package vpnc
|
|
Summary: vpnc support for plasma6-nm
|
|
Requires: NetworkManager-vpnc
|
|
Requires: plasma6-nm = %{version}
|
|
Supplements: (plasma6-nm and NetworkManager-vpnc)
|
|
Provides: NetworkManager-vpnc-frontend
|
|
Provides: plasma-nm5-vpnc = %{version}
|
|
Obsoletes: plasma-nm5-vpnc < %{version}
|
|
# Old names provided / Obsoleted by plasma-nm5
|
|
Provides: plasma-nm-vpnc = %{version}
|
|
Obsoletes: plasma-nm-vpnc < %{version}
|
|
|
|
%description vpnc
|
|
vpnc plugin for plasma-nm components.
|
|
|
|
%if %{with openconnect}
|
|
%package openconnect
|
|
Summary: OpenConnect support for plasma6-nm
|
|
Requires: NetworkManager-openconnect
|
|
Requires: openconnect
|
|
Requires: plasma6-nm = %{version}
|
|
Supplements: (plasma6-nm and NetworkManager-openconnect)
|
|
Provides: NetworkManager-openconnect-frontend
|
|
Provides: plasma-nm5-openconnect = %{version}
|
|
Obsoletes: plasma-nm5-openconnect < %{version}
|
|
# Old names provided / Obsoleted by plasma-nm5
|
|
Provides: plasma-nm-openconnect = %{version}
|
|
Obsoletes: plasma-nm-openconnect < %{version}
|
|
|
|
%description openconnect
|
|
OpenConnect plugin for plasma-nm components.
|
|
%endif
|
|
|
|
%package libreswan
|
|
Summary: Libreswan support for plasma6-nm
|
|
Requires: NetworkManager-libreswan
|
|
Requires: plasma6-nm = %{version}
|
|
Supplements: (plasma6-nm and NetworkManager-libreswan)
|
|
Provides: NetworkManager-libreswan-frontend
|
|
Provides: plasma-nm5-libreswan = %{version}
|
|
Obsoletes: plasma-nm5-libreswan < %{version}
|
|
Provides: plasma-nm5-openswan = %{version}
|
|
Obsoletes: plasma-nm5-openswan < %{version}
|
|
# Old names provided / Obsoleted by plasma-nm5
|
|
Provides: plasma-nm-openswan = %{version}
|
|
Obsoletes: plasma-nm-openswan < %{version}
|
|
|
|
%description libreswan
|
|
Libreswan plugin for plasma-nm components.
|
|
|
|
%package strongswan
|
|
Summary: strongSwan support for plasma6-nm
|
|
Requires: NetworkManager-strongswan
|
|
Requires: plasma6-nm = %{version}
|
|
Supplements: (plasma6-nm and NetworkManager-strongswan)
|
|
Provides: NetworkManager-strongswan-frontend
|
|
Provides: plasma-nm5-strongswan = %{version}
|
|
Obsoletes: plasma-nm5-strongswan < %{version}
|
|
# Old names provided / Obsoleted by plasma-nm5
|
|
Provides: plasma-nm-strongswan = %{version}
|
|
Obsoletes: plasma-nm-strongswan < %{version}
|
|
|
|
%description strongswan
|
|
strongSwan plugin for plasma-nm components.
|
|
|
|
%package l2tp
|
|
Summary: L2TP support for plasma6-nm
|
|
Requires: NetworkManager-l2tp
|
|
Requires: plasma6-nm = %{version}
|
|
Supplements: (plasma6-nm and NetworkManager-l2tp)
|
|
Provides: NetworkManager-l2tp-frontend
|
|
Provides: plasma-nm5-l2tp = %{version}
|
|
Obsoletes: plasma-nm5-l2tp < %{version}
|
|
# Old names provided / Obsoleted by plasma-nm5
|
|
Provides: plasma-nm-l2tp = %{version}
|
|
Obsoletes: plasma-nm-l2tp < %{version}
|
|
|
|
%description l2tp
|
|
Layer Two Tunneling Protocol (L2TP) plugin for plasma-nm components.
|
|
|
|
%package pptp
|
|
Summary: PPTP support for plasma6-nm
|
|
Requires: NetworkManager-pptp
|
|
Requires: plasma6-nm = %{version}
|
|
Supplements: (plasma6-nm and NetworkManager-pptp)
|
|
Provides: NetworkManager-pptp-frontend
|
|
Provides: plasma-nm5-pptp = %{version}
|
|
Obsoletes: plasma-nm5-pptp < %{version}
|
|
# Old names provided / Obsoleted by plasma-nm5
|
|
Provides: plasma-nm-pptp = %{version}
|
|
Obsoletes: plasma-nm-pptp < %{version}
|
|
|
|
%description pptp
|
|
Point-To-Point Tunneling Protocol (PPTP) plugin for plasma-nm components.
|
|
|
|
%package ssh
|
|
Summary: SSH support for plasma6-nm
|
|
Requires: plasma6-nm = %{version}
|
|
# NetworkManager-ssh doesn't exist in Factory
|
|
#Requires: NetworkManager-ssh
|
|
Supplements: (plasma6-nm and NetworkManager-ssh)
|
|
Provides: NetworkManager-ssh-frontend
|
|
Provides: plasma-nm5-ssh = %{version}
|
|
Obsoletes: plasma-nm5-ssh < %{version}
|
|
|
|
%description ssh
|
|
Secure Shell (SSH) plugin for plasma-nm components.
|
|
|
|
%package sstp
|
|
Summary: SSTP support for plasma6-nm
|
|
Requires: plasma6-nm = %{version}
|
|
# NetworkManager-sstp doesn't exist in Factory
|
|
#Requires: NetworkManager-sstp
|
|
Supplements: (plasma6-nm and NetworkManager-sstp)
|
|
Provides: NetworkManager-sstp-frontend
|
|
Obsoletes: plasma-nm5-sstp < %{version}
|
|
|
|
%description sstp
|
|
Secure Sockets Tunneling Protocol (SSTP) plugin for plasma-nm components.
|
|
|
|
%package iodine
|
|
Summary: VPN support for plasma6-nm
|
|
Requires: NetworkManager-iodine
|
|
Requires: plasma6-nm = %{version}
|
|
Supplements: (plasma6-nm and NetworkManager-iodine)
|
|
Provides: NetworkManager-iodine-frontend
|
|
Obsoletes: plasma-nm5-iodine < %{version}
|
|
|
|
%description iodine
|
|
Iodine (VPN through DNS tunnel) plugin for plasma-nm components.
|
|
|
|
%package fortisslvpn
|
|
Summary: FortiGate SSL VPN support for plasma6-nm
|
|
Requires: plasma6-nm = %{version}
|
|
# Not available in oS:F stagings, leading to installcheck failure
|
|
# TODO ↑ still true?
|
|
# Requires: NetworkManager-fortisslvpn
|
|
Supplements: (plasma6-nm and NetworkManager-fortisslvpn)
|
|
Provides: NetworkManager-fortisslvpn-frontend
|
|
Obsoletes: plasma-nm5-fortisslvpn < %{version}
|
|
|
|
%description fortisslvpn
|
|
FortiGate SSL VPN plugin for plasma-nm components.
|
|
|
|
%prep
|
|
%autosetup -p1 -n %{rname}-%{version}
|
|
|
|
%build
|
|
%cmake_kf6 \
|
|
-DQT_QML_NO_CACHEGEN:BOOL=TRUE
|
|
|
|
%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 %{name} --with-qt --all-name --generate-subpackages
|
|
|
|
%fdupes %{buildroot}
|
|
|
|
%files
|
|
%license LICENSES/*
|
|
%dir %{_kf6_plugindir}/plasma/network
|
|
%dir %{_kf6_plugindir}/plasma/network/vpn
|
|
%{_kf6_applicationsdir}/kcm_cellular_network.desktop
|
|
%{_kf6_applicationsdir}/kcm_mobile_hotspot.desktop
|
|
%{_kf6_applicationsdir}/kcm_mobile_wifi.desktop
|
|
%{_kf6_applicationsdir}/kcm_networkmanagement.desktop
|
|
%{_kf6_applicationsdir}/org.kde.vpnimport.desktop
|
|
%{_kf6_debugdir}/plasma-nm.categories
|
|
%{_kf6_libdir}/libplasmanm_editor.so
|
|
%{_kf6_libdir}/libplasmanm_internal.so
|
|
%{_kf6_notificationsdir}/networkmanagement.notifyrc
|
|
%{_kf6_plugindir}/kf6/kded/networkmanagement.so
|
|
%{_kf6_plugindir}/plasma/kcms/systemsettings/kcm_cellular_network.so
|
|
%{_kf6_plugindir}/plasma/kcms/systemsettings/kcm_mobile_hotspot.so
|
|
%{_kf6_plugindir}/plasma/kcms/systemsettings/kcm_mobile_wifi.so
|
|
%{_kf6_plugindir}/plasma/kcms/systemsettings_qwidgets/kcm_networkmanagement.so
|
|
%dir %{_kf6_plugindir}/plasma/applets/
|
|
%{_kf6_plugindir}/plasma/applets/org.kde.plasma.networkmanagement.so
|
|
%dir %{_kf6_qmldir}/org/kde/plasma
|
|
%{_kf6_qmldir}/org/kde/plasma/networkmanagement/
|
|
%{_kf6_sharedir}/kcm_networkmanagement/
|
|
|
|
%files openvpn
|
|
%{_kf6_plugindir}/plasma/network/vpn/plasmanetworkmanagement_openvpnui.so
|
|
|
|
%files vpnc
|
|
%{_kf6_plugindir}/plasma/network/vpn/plasmanetworkmanagement_vpncui.so
|
|
|
|
%if %{with openconnect}
|
|
%files openconnect
|
|
%{_kf6_plugindir}/plasma/network/vpn/plasmanetworkmanagement_openconnect_anyconnect.so
|
|
%{_kf6_plugindir}/plasma/network/vpn/plasmanetworkmanagement_openconnect_arrayui.so
|
|
%{_kf6_plugindir}/plasma/network/vpn/plasmanetworkmanagement_openconnect_f5ui.so
|
|
%{_kf6_plugindir}/plasma/network/vpn/plasmanetworkmanagement_openconnect_fortinetui.so
|
|
%{_kf6_plugindir}/plasma/network/vpn/plasmanetworkmanagement_openconnect_globalprotectui.so
|
|
%{_kf6_plugindir}/plasma/network/vpn/plasmanetworkmanagement_openconnect_juniperui.so
|
|
%{_kf6_plugindir}/plasma/network/vpn/plasmanetworkmanagement_openconnect_pulseui.so
|
|
%endif
|
|
|
|
%files libreswan
|
|
%{_kf6_plugindir}/plasma/network/vpn/plasmanetworkmanagement_libreswanui.so
|
|
|
|
%files strongswan
|
|
%{_kf6_plugindir}/plasma/network/vpn/plasmanetworkmanagement_strongswanui.so
|
|
|
|
%files l2tp
|
|
%{_kf6_plugindir}/plasma/network/vpn/plasmanetworkmanagement_l2tpui.so
|
|
|
|
%files pptp
|
|
%{_kf6_plugindir}/plasma/network/vpn/plasmanetworkmanagement_pptpui.so
|
|
|
|
%files ssh
|
|
%{_kf6_plugindir}/plasma/network/vpn/plasmanetworkmanagement_sshui.so
|
|
|
|
%files sstp
|
|
%{_kf6_plugindir}/plasma/network/vpn/plasmanetworkmanagement_sstpui.so
|
|
|
|
%files iodine
|
|
%{_kf6_plugindir}/plasma/network/vpn/plasmanetworkmanagement_iodineui.so
|
|
|
|
%files fortisslvpn
|
|
%{_kf6_plugindir}/plasma/network/vpn/plasmanetworkmanagement_fortisslvpnui.so
|
|
|
|
%changelog
|