Hi!
I have an initial albeit hackish and half-broken Gqrx snap and feel it’s the right moment to mention this here!
Some of you might have heard about snaps; for the others: it’s more of an app distribution format like .dmg on OSX or .apk on Android to ship a whole application including all its dependencies. It was introduced in Ubuntu and is available on a limited (but growing :^) number of distros. Main advantages are that upstreams can ship latest bits directly to users of older releases, and apps are confined to limit what damage they can do.
What does that mean in practice? Ubuntu 14.04+ users should have snap support by default on their system and would simply run:
snap install --edge --devmode gqrx-lool
and get a Gqrx + Gnuradio + Soapy + Limesuite all build from the latest sources. snap remove
it and it’s gone again. No PPAs, .deb dependencies hell and what not.
Once the snap is installed, this would list adapters detected by Soapy:
lool@ubuntu:~$ gqrx-lool.SoapySDRUtil --find
######################################################
## Soapy SDR – the SDR abstraction library
######################################################
Found device 0
addr = 1d50:6108
driver = lime
label = LimeSDR-USB [USB 2.0] XYZ
media = USB 2.0
module = STREAM
name = LimeSDR-USB
serial = XYZ
And run gqrx-lool.gqrx
to get the familiar Gqrx GUI.
This is an initial snap shared in the spirit of releasing early and often, hence it comes with a number of issues:
- it’s too big because it includes too much, I am including everything including headers etc.; when I was including the gnuradio docs (~194M) the snap squashfs was about 113M
- it has to be installed in “–devmode” to work which basically means unconfined; amongst others I suspect a blocker is USB/PCI device access, but I have not researched this yet
- I’m not correctly installing the icon for the desktop file
- probably ton of random issues; I have too little experience with gnu radio and gqrx to tell which features are important
- and if you wonder about the -lool suffix in the snap name and commands, this is to leave the official “gqrx” name to the true upstream
NB: I’m sometimes getting this when exiting gqrx, doesn’t seem to relate to the snap but the snap happily triggers it:
*** Error in
gqrx’: corrupted double-linked list: 0x0000000002e1d360 ***`
the backtrace is in libgnuradio-runtime.
I picked Gqrx as a target because IIUC it’s kind of the hello-world of SDR, but I’d be curious to read what people would like to see as snaps!
Cheers,
- Loïc Minier