File sshuttle-gui.spec of Package sshuttle-gui

%global debug_package %{nil}

Name:		sshuttle-gui
Version:	0.3
Release:	1
Group:		System/Configuration/Networking
Summary:	GUI for SShuttle - Transparent proxy server
License:	GPLv3
URL:		https://github.com/AKotov-dev/SShuttle-GUI
Source0:	https://github.com/AKotov-dev/SShuttle-GUI/archive/refs/tags/v%{version}.tar.gz?/%{name}-%{version}.tar.gz
BuildRequires:	lazarus
BuildRequires:	gettext
BuildRequires:	systemd
Requires:	sshuttle
Requires:	systemd
Requires:	iptables
Requires:	sshpass
Requires:	polkit
Requires:	fping
Requires:	gtk2

%description
GUI for SShuttle - Transparent proxy server that works as a poor man's VPN.
Forwards over ssh.

%post
systemctl daemon-reload

%postun
systemctl daemon-reload

#------------------------------------------------------------------
%prep
%setup -n SShuttle-GUI-%{version}/%{name}

# remove prebuild file
rm -f sshuttle_gui
rm -rf backup
rm -rf lib

%build
lazbuild --build-all *.lpi

%install
mkdir -p %{buildroot}%{_bindir}
mkdir -p %{buildroot}%{_datadir}/{pixmaps,%{name},applications,polkit-1}
mkdir -p %{buildroot}%{_datadir}/%{name}/languages
mkdir -p %{buildroot}/etc/systemd/system/

cp ./all/usr/bin/* %{buildroot}%{_bindir}/
cp ./sshuttle_gui %{buildroot}%{_datadir}/%{name}
cp ./all/usr/share/icons/* %{buildroot}%{_datadir}/pixmaps/
cp ./all/usr/share/applications/* %{buildroot}%{_datadir}/applications/
cp ./languages/*.mo %{buildroot}%{_datadir}/%{name}/languages/
cp -r ./all/usr/share/polkit-1/actions %{buildroot}%{_datadir}/polkit-1/
cp ./all/etc/systemd/system/sshuttle.service %{buildroot}/etc/systemd/system/

%files
%doc ../README.md
%license ../LICENSE
%defattr(-,root,root)
%{_bindir}/%{name}
%{_datadir}/%{name}
%{_datadir}/applications/%{name}.desktop
%{_datadir}/pixmaps/%{name}.png
%{_datadir}/polkit-1/
%{_datadir}/polkit-1/actions/*
%dir "/etc/systemd"
%dir "/etc/systemd/system/"
"/etc/systemd/system/sshuttle.service"

%changelog
* Thu Jul 3 2025 Mistific@tor - 0.3-1
- Recompiling in Lazarus 3.2
- Force iptables nat clear if sshuttle.service is stopped
- Re-creating SSH keys (when there are changes on the server)
openSUSE Build Service is sponsored by