Skip to content

sdr-j-fm: 3.16-unstable-2023-12-07 → 3.20-2025-10-07#448315

Merged
doronbehar merged 5 commits intoNixOS:masterfrom
sikmir:sdr-j-fm
Oct 14, 2025
Merged

sdr-j-fm: 3.16-unstable-2023-12-07 → 3.20-2025-10-07#448315
doronbehar merged 5 commits intoNixOS:masterfrom
sikmir:sdr-j-fm

Conversation

@sikmir
Copy link
Member

@sikmir sikmir commented Oct 3, 2025

JvanKatwijk/sdr-j-fm@8e3a67f...3.20

Things done

  • Built on platform:
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • Tested, as applicable:
  • Ran nixpkgs-review on this PR. See nixpkgs-review usage.
  • Tested basic functionality of all binary files, usually in ./result/bin/.
  • Nixpkgs Release Notes
    • Package update: when the change is major or breaking.
  • NixOS Release Notes
    • Module addition: when adding a new NixOS module.
    • Module update: when the change is significant.
  • Fits CONTRIBUTING.md, pkgs/README.md, maintainers/README.md and other READMEs.

Add a 👍 reaction to pull requests you find important.

@sikmir sikmir requested a review from doronbehar October 3, 2025 19:46
@Sigmanificient Sigmanificient changed the title Sdr j fm sdr-j-fm: 3.16-unstable-2023-12-07 → 3.20, migrate to by-name Oct 3, 2025
@nixpkgs-ci nixpkgs-ci bot added 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 1 This PR causes 1 package to rebuild on Linux. labels Oct 3, 2025
@Sigmanificient
Copy link
Member

nixpkgs-review result

Generated using nixpkgs-review-gha

Command: nixpkgs-review pr 448315
Commit: a309606b630bc4bf4df22d42f7607ddbf8b1aba9 (subsequent changes)
Merge: 8c6a77d2d4d649eccd9c0defeb41ee63f3c28b35

Logs: https://github.com/Sigmanificient/nixpkgs-review-gha/actions/runs/18246308876


x86_64-linux

✅ 1 package built:
  • sdr-j-fm

aarch64-linux

✅ 1 package built:
  • sdr-j-fm

Copy link
Contributor

@doronbehar doronbehar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the update! Looks good overall.

Comment on lines 84 to 85
wrapProgram $out/bin/fmreceiver \
--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath finalAttrs.runtimeDependencies}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is surprising. Do you have an idea why is this needed? Could you share what happens without this?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure, see https://github.com/JvanKatwijk/sdr-j-fm/blob/283d362241da94ea935da6476cc08bc4cf2e7564/devices/rtlsdr-handler/rtlsdr-handler.cpp#L113, without it nothing works.

This link explains only librtlsdr.so, not all of the rest of the runtimeDependencies. I think that this is also something that should be avoided. Usually open source packages don't need such LD_LIBRARY_PATH wrapping. In the worst case, we can use substituteInPlace and put there the full Nix path of librtlsdr.so.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@sikmir I unresolved this conversation.

Copy link
Member Author

@sikmir sikmir Oct 4, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This link explains only librtlsdr.so, not all of the rest of the runtimeDependencies.

The same for other devices: https://github.com/search?q=repo%3AJvanKatwijk%2Fsdr-j-fm%20dlopen&type=code

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the worst case, we can use substituteInPlace and put there the full Nix path of librtlsdr.so.

I think maintaining such patch would be harder.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yea you might be right at the moment on this subject. I suspect that something in upstream's CMakeLists.txt should be modified to help us avoid this, so I'm consulting with a LLM for this.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

without it nothing works.

@sikmir what exactly doesn't work? I built and ran this binary with and without this wrapping and it didn't fail. I got many times this message:

ALSA lib pcm_dmix.c:1000:(snd_pcm_dmix_open) unable to open slave

And many more... But no substantial failure.

Copy link
Member Author

@sikmir sikmir Oct 4, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Try to test with real hardware. I've tested with rtl-sdr. You will get failed to open librtlsdr.so.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@sikmir sikmir force-pushed the sdr-j-fm branch 4 times, most recently from a7c8225 to 5af3e39 Compare October 4, 2025 17:15
@sikmir sikmir requested a review from doronbehar October 4, 2025 17:16
@sikmir sikmir force-pushed the sdr-j-fm branch 2 times, most recently from 1826094 to 9ecfa50 Compare October 4, 2025 17:27
@sikmir sikmir requested a review from doronbehar October 4, 2025 17:28
@doronbehar doronbehar marked this pull request as draft October 5, 2025 19:17
@doronbehar
Copy link
Contributor

Let's give upstram a few days to reply. Also, the commit they merged regarding Qt::Xml is much larger, then the patch we currently pull. Perhaps if they'll fix the linking issue we might want to update to an unstable version.

@doronbehar doronbehar changed the title sdr-j-fm: 3.16-unstable-2023-12-07 → 3.20, migrate to by-name sdr-j-fm: 3.16-unstable-2023-12-07 → 3.20-2025-10-07 Oct 14, 2025
@doronbehar doronbehar marked this pull request as ready for review October 14, 2025 16:59
@doronbehar
Copy link
Contributor

I decided I won't mind this getting merged as is. However I changed the commit log a bit, and added a comment stating that the dlopen situation is not ideal.

@doronbehar
Copy link
Contributor

Taking your 👍 reaction as an approval, merging.

@doronbehar doronbehar added this pull request to the merge queue Oct 14, 2025
Merged via the queue into NixOS:master with commit 43cc803 Oct 14, 2025
28 checks passed
@sikmir sikmir deleted the sdr-j-fm branch October 14, 2025 17:55
stdenv.mkDerivation (finalAttrs: {
pname = "sdr-j-fm";
version = "3.20";
version = "3.20-2025-10-07";
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, unstable- missed.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. 10.rebuild-linux: 1 This PR causes 1 package to rebuild on Linux.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants