Skip to content

Fix DFNR model not found when installed outside build tree#1003

Merged
ten9876 merged 1 commit into
aethersdr:mainfrom
boydsoftprez:fix/dfnr-model-path-990
Apr 8, 2026
Merged

Fix DFNR model not found when installed outside build tree#1003
ten9876 merged 1 commit into
aethersdr:mainfrom
boydsoftprez:fix/dfnr-model-path-990

Conversation

@boydsoftprez
Copy link
Copy Markdown
Collaborator

Summary

  • Add XDG data dir and system-wide search paths (~/.local/share/AetherSDR/, /usr/share/AetherSDR/, /usr/local/share/AetherSDR/) to findModelPath() so DFNR works when the binary is installed to a system location
  • Add CMake install() rule for the model file on Linux/Windows so cmake --install deploys it correctly
  • Log all searched paths when the model is not found, for easier debugging

Test plan

  • Builds cleanly on macOS (Ninja, RelWithDebInfo)
  • Model loads successfully when present (verified via log: DeepFilterFilter: initialized, frame size = 480)
  • When model is missing, new warning lists all 6 searched paths
  • cmake --install places model in correct location
  • Linux build verification (reporter's platform)

Fixes #990

JJ Boyd ~KG4VCF
Co-Authored with Claude Code

🤖 Generated with Claude Code

findModelPath() only searched relative to the executable directory,
which fails when the binary is installed to a system location (e.g.
/usr/local/bin). Add XDG data dir and system-wide search paths
(/usr/share/AetherSDR, /usr/local/share/AetherSDR), add a CMake
install() rule for the model file, and log all searched paths on
failure for easier debugging.

Fixes aethersdr#990

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@boydsoftprez boydsoftprez requested a review from ten9876 as a code owner April 8, 2026 12:27
@ten9876 ten9876 merged commit 0c928d8 into aethersdr:main Apr 8, 2026
5 checks passed
aethersdr-agent Bot pushed a commit that referenced this pull request Apr 10, 2026
…1003)

findModelPath() only searched relative to the executable directory,
which fails when the binary is installed to a system location (e.g.
/usr/local/bin). Add XDG data dir and system-wide search paths
(/usr/share/AetherSDR, /usr/local/share/AetherSDR), add a CMake
install() rule for the model file, and log all searched paths on
failure for easier debugging.

Fixes #990

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

DFNR appears in the UI and accepts user interaction, but silently disables itself on every attempt.

2 participants