File openvpn3-indicator.spec of Package openvpn3-indicator

Name: openvpn3-indicator
Version: 0.1.20250609153526
Release: 1
Summary: Simple GTK indicator GUI for OpenVPN3
License: AGPL-3.0
URL: https://github.com/OpenVPN/openvpn3-indicator
BuildArch: noarch
BuildRequires: desktop-file-utils make python3 sed zip -post-build-checks
Requires: gnome-shell-extension-appindicator openvpn3-linux python313-dbus-python python313-SecretStorage python313-setproctitle typelib-1_0-AyatanaAppIndicator3-0_1
Source: openvpn3-indicator-%{version}.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-build

%description


This project adds a simple GTK indicator application that can be used to control OpenVPN3 tunnels.
It is based on D-Bus interface provided by OpenVPN3 Linux client and does not require elevated privileges to use.
It should be considered as a temporary work-around until Network Manager implements support for OpenVPN 3, or OpenVPN provides a graphical interface for Linux users.


%prep

%setup

%build

make DESTDIR=%{buildroot} BINDIR=%{_bindir} DATADIR=%{_datadir} HARDCODE_PYTHON=/usr/bin/python3 all

%install

make DESTDIR=%{buildroot} BINDIR=%{_bindir} DATADIR=%{_datadir} package
desktop-file-validate %{buildroot}%{_datadir}/applications/net.openvpn.openvpn3_indicator.desktop

%post

touch --no-create %{_datadir}/icons/hicolor || :
touch --no-create %{_datadir}/icons/Yaru || :
xdg-mime install --mode system %{_datadir}/mime/packages/application-x-openvpn-profile.xml

%posttrans

update-desktop-database %{_datadir}/applications || :
update-mime-database %{_datadir}/mime || :
gtk-update-icon-cache --silent %{_datadir}/icons/hicolor || :
gtk-update-icon-cache --silent %{_datadir}/icons/Yaru || :

%preun

xdg-mime uninstall --mode system %{_datadir}/mime/packages/application-x-openvpn-profile.xml

%postun

update-desktop-database %{_datadir}/applications || :
update-mime-database %{_datadir}/mime || :
touch --no-create %{_datadir}/icons/hicolor || :
touch --no-create %{_datadir}/icons/Yaru || :
gtk-update-icon-cache --silent %{_datadir}/icons/hicolor || :
gtk-update-icon-cache --silent %{_datadir}/icons/Yaru || :

%files

%license LICENSE
%doc README.md
%{_bindir}/%{name}
/etc/xdg/autostart/%{name}.desktop
%{_datadir}/applications/net.openvpn.openvpn3_indicator.desktop
%{_datadir}/icons/Yaru/scalable/mimetypes/application-x-openvpn-profile.svg
%{_datadir}/icons/hicolor/scalable/apps/openvpn3-indicator.svg
%{_datadir}/icons/hicolor/scalable/mimetypes/application-x-openvpn-profile.svg
%{_datadir}/icons/hicolor/scalable/status/openvpn3-indicator-idle-error.svg
%{_datadir}/icons/hicolor/scalable/status/openvpn3-indicator-paused.svg
%{_datadir}/icons/hicolor/scalable/status/openvpn3-indicator-configuring.svg
%{_datadir}/icons/hicolor/scalable/status/openvpn3-indicator-active-error.svg
%{_datadir}/icons/hicolor/scalable/status/openvpn3-indicator-loading.svg
%{_datadir}/icons/hicolor/scalable/status/openvpn3-indicator-idle.svg
%{_datadir}/icons/hicolor/scalable/status/openvpn3-indicator-active.svg
%{_datadir}/mime/packages/application-x-openvpn-profile.xml
%{_datadir}/man/man1/openvpn3-indicator.1.gz

openSUSE Build Service is sponsored by