From 05141b9a1b84fe3e09bc950230bb0d6607397ce1 Mon Sep 17 00:00:00 2001 From: Smittix Date: Sat, 14 Mar 2026 16:01:55 +0000 Subject: [PATCH] v2.26.7: fix health check SDR detection on macOS (#188) timeout (GNU coreutils) is not available on macOS, causing rtl_test to silently fail and report no SDR device found. Now tries timeout, then gtimeout (Homebrew coreutils), then falls back to background process with manual kill. Co-Authored-By: Claude Opus 4.6 --- CHANGELOG.md | 7 +++++++ config.py | 9 ++++++++- pyproject.toml | 2 +- setup.sh | 13 ++++++++++++- 4 files changed, 28 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6f05bc4..c799add 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,13 @@ All notable changes to iNTERCEPT will be documented in this file. +## [2.26.7] - 2026-03-14 + +### Fixed +- **Health check SDR detection on macOS** — `timeout` (GNU coreutils) is not available on macOS, causing `rtl_test` to silently fail and report "No RTL-SDR device found" even when one is connected. Now tries `timeout`, then `gtimeout` (Homebrew coreutils), then falls back to a background process with manual kill. (#188) + +--- + ## [2.26.6] - 2026-03-14 ### Fixed diff --git a/config.py b/config.py index c4037f1..738593d 100644 --- a/config.py +++ b/config.py @@ -7,10 +7,17 @@ import os import sys # Application version -VERSION = "2.26.6" +VERSION = "2.26.7" # Changelog - latest release notes (shown on welcome screen) CHANGELOG = [ + { + "version": "2.26.7", + "date": "March 2026", + "highlights": [ + "Fix health check SDR detection on macOS (timeout command not available)", + ] + }, { "version": "2.26.6", "date": "March 2026", diff --git a/pyproject.toml b/pyproject.toml index 4b7a04a..1af3762 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "intercept" -version = "2.26.6" +version = "2.26.7" description = "Signal Intelligence Platform - Pager/433MHz/ADS-B/Satellite/WiFi/Bluetooth" readme = "README.md" requires-python = ">=3.9" diff --git a/setup.sh b/setup.sh index 31f8a65..403b5fb 100755 --- a/setup.sh +++ b/setup.sh @@ -1924,7 +1924,18 @@ do_health_check() { info "SDR device detection..." if cmd_exists rtl_test; then local rtl_output - rtl_output=$(timeout 3 rtl_test -d 0 2>&1 || true) + if cmd_exists timeout; then + rtl_output=$(timeout 3 rtl_test -d 0 2>&1 || true) + elif cmd_exists gtimeout; then + rtl_output=$(gtimeout 3 rtl_test -d 0 2>&1 || true) + else + # No timeout command (common on macOS) — run with background kill + rtl_test -d 0 > /tmp/.rtl_test_out 2>&1 & local rtl_pid=$! + sleep 2 + kill "$rtl_pid" 2>/dev/null; wait "$rtl_pid" 2>/dev/null + rtl_output=$(cat /tmp/.rtl_test_out 2>/dev/null || true) + rm -f /tmp/.rtl_test_out + fi if echo "$rtl_output" | grep -q "Found\|Using device"; then ok "RTL-SDR device detected" ((pass++)) || true