Name: littlesnitch Version: 1.0.9 Release: 100.1.2%{?dist} Summary: Little Snitch for Linux monitors and controls outgoing network connections using eBPF License: GPL-2.0-only AND LicenseRef-proprietary URL: https://obdev.at/products/littlesnitch-linux/index.html Source0: https://obdev.at/downloads/littlesnitch-linux/littlesnitch-%{version}-1.x86_64.rpm Source1: https://obdev.at/downloads/littlesnitch-linux/littlesnitch-%{version}-1.aarch64.rpm Source2: https://obdev.at/downloads/littlesnitch-linux/littlesnitch-%{version}-1.ppc64le.rpm Source3: https://obdev.at/downloads/littlesnitch-linux/littlesnitch-%{version}-1.riscv64.rpm BuildRequires: rpm BuildRequires: cpio Provides: littlesnitch = %{version}-%{release} Conflicts: littlesnitch-bin %description Little Snitch for Linux monitors and controls outgoing network connections using eBPF. This package repackages the official upstream RPM package for Fedora-based systems. Little Snitch for Linux requires Linux kernel 6.12 or newer with BTF support. %prep rm -rf extracted mkdir -p extracted cd extracted case "%{_target_cpu}" in x86_64) rpm2cpio %{SOURCE0} | cpio -idmv ;; aarch64) rpm2cpio %{SOURCE1} | cpio -idmv ;; ppc64le) rpm2cpio %{SOURCE2} | cpio -idmv ;; riscv64) rpm2cpio %{SOURCE3} | cpio -idmv ;; *) echo "Unsupported architecture: %{_target_cpu}" exit 1 ;; esac %build # Upstream binary RPM package. %install cd extracted if [ -d usr ]; then install -dm755 %{buildroot}%{_prefix} cp -a usr/. %{buildroot}%{_prefix}/ fi if [ -d etc ]; then install -dm755 %{buildroot}%{_sysconfdir} cp -a etc/. %{buildroot}%{_sysconfdir}/ fi if [ -d lib ]; then install -dm755 %{buildroot}/lib cp -a lib/. %{buildroot}/lib/ fi # Build an RPM file list without owning top-level system directories # like /usr/bin, /usr/lib, /etc/init.d, or /lib/systemd. filelist="$PWD/../%{name}.files" rm -f "$filelist" for topdir in %{_prefix} %{_sysconfdir} /lib; do if [ -d "%{buildroot}${topdir}" ]; then find "%{buildroot}${topdir}" \ -mindepth 1 \ \( -type f -o -type l \) \ -print \ | sed "s|^%{buildroot}||" \ >> "$filelist" fi done # Mark /etc files as config files. sed -i 's|^/etc/|%config(noreplace) /etc/|' "$filelist" sort -u -o "$filelist" "$filelist" echo "Packaged files:" cat "$filelist" %post -p /bin/bash echo "=================================================================" echo " Little Snitch daemon installed successfully! " echo " " echo " To activate the network monitor, run the following command " echo " as root or with sudo: " echo " " if [ -d /run/systemd/system ]; then echo " systemctl enable --now littlesnitch.service " elif [ -f /sbin/openrc-run ] || [ -d /run/openrc ]; then echo " rc-update add littlesnitch default " echo " rc-service littlesnitch start " else echo " Please configure your init system to start the daemon. " fi echo "=================================================================" %preun -p /bin/bash if [ "$1" -eq 0 ]; then echo ":: Stopping Little Snitch daemon..." if [ -d /run/systemd/system ]; then systemctl disable --now littlesnitch.service || true elif [ -f /sbin/openrc-run ] || [ -d /run/openrc ]; then rc-service littlesnitch stop || true rc-update del littlesnitch default || true fi fi %posttrans -p /bin/bash if [ -d /run/systemd/system ]; then systemctl try-restart littlesnitch.service || true elif [ -f /sbin/openrc-run ] || [ -d /run/openrc ]; then rc-service littlesnitch restart || true fi %files -f %{name}.files %changelog * Sat Jun 20 2026 Sl (Shahaf Levi) - 1.0.9-2 - Repackage the official upstream RPM for all upstream-supported RPM architectures