Hi Franco, This is great! You're right that I don't think there's any way to get this on conda-forge, but I'd be happy to include it in radioconda (with the proprietary bits still needing external installation) if we can figure out a good way.
The easiest thing to do would be to create an account at anaconda.org and upload any packages you build there. Then people could install them with conda through the command line by specifying your channel. If you put the instructions for manually copying the proprietary DLL into the package description in the recipe, then it will also be shown on its anaconda.org page and we'll have something to refer people to for instructions. Beyond that, I think the next best thing is to make your recipe publicly accessible. Then anyone should be able to build the package themselves if they have the SDDplay sources installed already. Best would probably be to incorporate it into the gr-sdrplay3 repository like I've tried out here in my fork of gr-paint: https://github.com/ryanvolz/gr-paint/tree/conda/.conda The next best thing would be to just publish the recipe in its own repository; no need for it to be a conda-forge-style "feedstock" since automatic builds will be impossible. Then if there is a set of built packages somewhere that I can pull in via "conda install", I can add gr-sdrplay3 to radioconda and point people to the manual instructions for getting it working. Cheers, Ryan On 3/30/22 9:40 PM, Franco VENTURI wrote:
Good news - with Ryan's help a few days ago I was able to create a recipe and a conda package for the gr-sdrplay3 OOT module for Windows. For those not familiar with it, the gr-sdrplay3 OOT module adds support for the SDRplay RSP devices as native GNU Radio sources, using directly the SDRplay APIs (i.e. without going through SoapySDR). Up to now it was only available on Linux (and probably Mac), but with this conda package it is possible to run it on Windows (it requires the most current GNU Radio installation using conda - see here: https://wiki.gnuradio.org/index.php/CondaInstall <https://wiki.gnuradio.org/index.php/CondaInstall>). For those interested in trying it out, this is the link to the conda package on my Google Drive: https://drive.google.com/file/d/1ZTUeYyOpms0rx7yU2Q5fOqElKIKgyJwK/view?usp=sharing <https://drive.google.com/file/d/1ZTUeYyOpms0rx7yU2Q5fOqElKIKgyJwK/view?usp=sharing> (the conda recipe is in the package). One important notice - conda's Python on Windows loads any dependent DLL from a limited set of folders (i.e. it does not use the %PATH% environment variable to search for dependent DLLs, as I think most of the other Windows applications do). This means that the proprietary DLL for the SDRplay API 'sdrplay_api.dll' (which is typically installed under 'C:\Program Files\SDRplay\API\x64\') needs to be copied to one of these folders for things to work: - %CONDA_PREFIX%\Lib\site-packages\gnuradio\sdrplay3 - %CONDA_PREFIX% - %CONDA_PREFIX%\Library\mingw-w64\bin - %CONDA_PREFIX%\Library\bin - %CONDA_PREFIX%\Scripts - C:\Windows\System32 Alternatively setting the environment variable CONDA_DLL_SEARCH_MODIFICATION_ENABLE to '1' makes conda Python look into all the folders listed in %PATH%, and it should work too. If conda Python is not able to find the 'sdrplay_api.dll' file, it will throw an 'ImportError' exception for the line 'from gnuradio import sdrplay3'. I am not sure of the best way to distribute this package after this initial 'beta' version, since it is not straightforward to build it automatically on conda-forge because of its dependence on SDRplay proprietary DLL and include files. I am open to ideas and suggestions on how to find a good long-term solution (also, if this is not the best forum to discuss this specific conda related topic, please let me know, and we can continue this conversation elsewhere). Franco