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