%if 0%{?suse_version} %global dist .suse%{suse_version} %endif %global _hardened_build 1 %define _build_id_links none %define debug_package %{nil} Name: wifiman-desktop Version: 1.3.0 Release: 119%{?dist} Summary: Discover devices and access Teleport VPNs License: MIT Vendor: Ubiquiti Inc. URL: https://wifiman.com/ # RPM packaging source and issue tracker: # https://github.com/Jean-Pereira-Dev/wifiman-desktop-rpm # Fedora / EPEL package repository: # https://copr.fedorainfracloud.org/coprs/jeanpereira/wifiman/ %ifarch x86_64 Source0: https://desktop.wifiman.com/wifiman-desktop-1.3.0-amd64.deb %endif BuildRequires: binutils BuildRequires: desktop-file-utils BuildRequires: gzip %if 0%{?suse_version} BuildRequires: systemd-rpm-macros %else BuildRequires: systemd-units %endif BuildRequires: tar BuildRequires: xz BuildRequires: zstd ExclusiveArch: x86_64 %if 0%{?suse_version} Requires: libgtk-3-0 Requires: libsecret-1-0 Requires: libuuid1 Requires: at-spi2-core Requires: libXtst6 Requires: libXss1 Requires: mozilla-nss Requires: libnotify4 Recommends: libappindicator3-1 %else Requires: gtk3 Requires: libsecret Requires: libuuid Requires: at-spi2-core Requires: libXtst Requires: libXScrnSaver Requires: nss Requires: libnotify Requires(post): policycoreutils-python-utils Requires(post): libselinux-utils Recommends: libappindicator-gtk3 %endif Requires: xdg-utils Requires: wireguard-tools Requires: systemd %description Unofficial RPM packaging of Ubiquiti WiFiman Desktop. Packaging source and issues: https://github.com/Jean-Pereira-Dev/wifiman-desktop-rpm Package repository: https://copr.fedorainfracloud.org/coprs/jeanpereira/wifiman/ WiFiman is here to save your home or office network from sluggish surfing, endless buffering, and congested data channels. With this free-to-use (and ad-free) app you can: - Detect and connect to all available Wi-Fi networks devices instantly. - Scan network subnet for details on available devices, using Bonjour, SNMP, NetBIOS, and Ubiquiti discovery protocols. - Conduct download/upload speed tests, store results, compare network performance, and share your insights with others. - Relocate your access points (APs) to nearby data channels to instantly increase signal strength and reduce traffic volume. - Connect remotely to your UniFi network via Teleport VPN. %prep %setup -cT ar x %{SOURCE0} payload=$(find . -maxdepth 1 -name 'data.tar.*' -print) test -n "$payload" tar xf "$payload" %build %install # Install binary install -D -m 755 usr/bin/wifiman-desktop %{buildroot}%{_bindir}/wifiman-desktop # Install lib directory (keep /usr/lib path to match service ExecStart) # Use . to include all files including dotfiles (.env) mkdir -p %{buildroot}%{_prefix}/lib/wifiman-desktop cp -a usr/lib/wifiman-desktop/. %{buildroot}%{_prefix}/lib/wifiman-desktop/ # Install systemd service install -D -m 644 usr/lib/wifiman-desktop/wifiman-desktop.service %{buildroot}%{_unitdir}/%{name}.service # Install desktop file and icons mkdir -p %{buildroot}%{_datadir} cp -a usr/share/* %{buildroot}%{_datadir}/ %check desktop-file-validate %{buildroot}/%{_datadir}/applications/%{name}.desktop %if 0%{?suse_version} %pre %service_add_pre %{name}.service %endif %post %if 0%{?suse_version} %service_add_post %{name}.service %else # BEGIN WIFIMAN SELINUX WORKAROUND # Apply before starting the daemon; repeated installs/upgrades are idempotent. # Containers and hosts with SELinux disabled do not have a live policy to alter. if selinuxenabled; then semanage permissive -a init_t || exit $? semanage permissive -a iptables_t || exit $? fi # END WIFIMAN SELINUX WORKAROUND %systemd_post %{name}.service %endif /usr/bin/systemctl enable --now %{name}.service >/dev/null 2>&1 || : /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : update-mime-database %{_datadir}/mime &>/dev/null || : update-desktop-database %{_datadir}/applications &>/dev/null || : %preun %if 0%{?suse_version} %service_del_preun %{name}.service %else %systemd_preun %{name}.service %endif %postun %if 0%{?suse_version} %service_del_postun %{name}.service %else %systemd_postun_with_restart %{name}.service %endif if [ $1 -eq 0 ] ; then /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : fi %posttrans /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : %files %defattr(-,root,root,-) %{_bindir}/wifiman-desktop %{_prefix}/lib/wifiman-desktop/ %{_datadir}/applications/%{name}.desktop %{_datadir}/icons/hicolor/*/apps/%{name}.png %{_unitdir}/%{name}.service %changelog * Wed Oct 21 2026 GitHub Actions 1.3.0-1 - Apply init_t and iptables_t SELinux permissive settings before service startup - Update to official WiFiman Desktop 1.3.0 - Accept compressed Debian payload formats supported by tar * Thu Feb 12 2026 GitHub Actions 1.2.8-1 - Update to version 1.2.8 with new FHS-compliant structure - Remove obsolete patches (package now uses standard paths) - Binary now in /usr/bin, libraries in /usr/lib/wifiman-desktop * Thu Sep 05 2024 Arun Babu Neelicattu 0.3.0-3 - spec: include all arch debs in srpm (arun.neelicattu@gmail.com) * Thu Sep 05 2024 Arun Babu Neelicattu 0.3.0-2 - tito: fetch sources for build (arun.neelicattu@gmail.com) * Thu Sep 05 2024 Arun Babu Neelicattu 0.3.0-1 - Release 0.30.0 package built with tito