%global forgeurl https://gitlab.gnome.org/GNOME/NetworkManager-openconnect %global version %(date +%Y%m%d) %global commit 9e0195aa94e183fa0da3d2c941922d2e831b6a7a %global _forgeversionsuffix %{scm}%(printf %.7s %{commit}) %global source_date_epoch_from_changelog 0 %forgemeta %if 0%{?fedora} < 28 && 0%{?rhel} < 8 %bcond_without libnm_glib %else # Disable the legacy version by default %bcond_with libnm_glib %endif %if 0%{?fedora} < 36 && 0%{?rhel} < 10 %bcond_with gtk4 %else %bcond_without gtk4 %endif %if 0%{?fedora} < 37 && 0%{?rhel} < 10 %bcond_with webkit41 %else %bcond_without webkit41 %endif %global nm_version 1.2.0 %global gtk3_version 3.4.0 %global openconnect_version 9.01 Summary: NetworkManager VPN plugin for openconnect Name: NetworkManager-openconnect Version: %{forgeversion} Release: %{autorelease} License: GPL-2.0-or-later AND LGPL-2.1-only URL: %{forgeurl} Source: %{forgesource} BuildRequires: make BuildRequires: gcc BuildRequires: pkgconfig(gtk+-3.0) >= %{gtk3_version} BuildRequires: pkgconfig(libnm) >= %{nm_version} BuildRequires: pkgconfig(libnma) >= %{nm_version} BuildRequires: pkgconfig(libsecret-1) BuildRequires: pkgconfig(glib-2.0) BuildRequires: intltool gettext libtool BuildRequires: pkgconfig(libxml-2.0) BuildRequires: pkgconfig(openconnect) >= %{openconnect_version} BuildRequires: pkgconfig(gcr-3) >= 3.4 %if %{with libnm_glib} BuildRequires: pkgconfig(libnm-util) >= %{nm_version} BuildRequires: pkgconfig(libnm-glib) >= %{nm_version} BuildRequires: pkgconfig(libnm-glib-vpn) >= %{nm_version} %endif %if %with gtk4 BuildRequires: pkgconfig(gtk4) >= 4.0 BuildRequires: pkgconfig(libnma-gtk4) >= 1.8.33 %endif %if %with webkit41 BuildRequires: pkgconfig(webkit2gtk-4.1) %else BuildRequires: pkgconfig(webkit2gtk-4.0) %endif Requires: NetworkManager >= %{nm_version} Requires: openconnect >= %{openconnect_version} Requires: dbus-common Obsoletes: NetworkManager-openconnect < 1.2.3-0 %global __provides_exclude ^libnm-.*\\.so Patch: %{forgeurl}/-/merge_requests/66.patch %description This package contains software for integrating the openconnect VPN software with NetworkManager and the GNOME desktop %package gnome Summary: NetworkManager VPN plugin for OpenConnect - GNOME files Requires: %{name}%{?_isa} = %{version}-%{release} Obsoletes: NetworkManager-openconnect < 1.2.3-0 %description gnome This package contains software for integrating VPN capabilities with the OpenConnect client with NetworkManager (GNOME files). %prep %forgeautosetup -p 1 NOCONFIGURE=x ./autogen.sh %__sed -i -e "/Disable\sXMLPOST$/s|$| */|" \ properties/nm-openconnect-editor-plugin.c # Create a sysusers.d config file cat >networkmanager-openconnect.sysusers.conf < /dev/null || : touch --no-create %{_datadir}/icons/hicolor if [ -x %{_bindir}/gtk-update-icon-cache ]; then %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || : fi %postun /usr/bin/update-desktop-database &> /dev/null || : touch --no-create %{_datadir}/icons/hicolor if [ -x %{_bindir}/gtk-update-icon-cache ]; then %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || : fi %endif %files -f %{name}.lang %{_libdir}/NetworkManager/libnm-vpn-plugin-openconnect.so %{_datadir}/dbus-1/system.d/nm-openconnect-service.conf %{_prefix}/lib/NetworkManager/VPN/nm-openconnect-service.name %{_libexecdir}/nm-openconnect-service %{_libexecdir}/nm-openconnect-service-openconnect-helper %doc AUTHORS ChangeLog NEWS %license COPYING %{_sysusersdir}/networkmanager-openconnect.conf %files gnome %{_libexecdir}/nm-openconnect-auth-dialog %{_libdir}/NetworkManager/libnm-vpn-plugin-openconnect-editor.so %{_datadir}/metainfo/network-manager-openconnect.metainfo.xml %if %with gtk4 %{_libdir}/NetworkManager/libnm-gtk4-vpn-plugin-openconnect-editor.so %endif %if %{with libnm_glib} %{_libdir}/NetworkManager/libnm-*-properties.so %{_sysconfdir}/NetworkManager/VPN/nm-openconnect-service.name %endif