Hello Iain,
but if the user asks for some particular hardware, there would be an error message telling what package to install to get access to the hardware. Many such packages have to be installed from source, but some of them are in the repos of the main Linux distros.
I would avoid putting messages into your code that talk about specific distributions. Today such things are in the configure script. In case a uset selects for example to use a BladeRF, Linrad would try to load libbladeRF.so and if it fails the message is: Could not load library libbladeRF.so Did you run ./configure after installing this library?
the configure script contains the information about how to install everything needed to the extent that I know about it. The hint at the end of the script is: Missing or not working libraries (non fatal.) For information, type ./configure --with-help
A message to tell you what is missing, and maybe a link to a webpage that explains where the package can be found for different distributions would be better. We don't want to make it harder for other distributions to package your code and a webpage can be easily updated with contributions from others after the package is released. Do make sure the URL can stay the same for a long time though. It would be nice if that URL could be managed by others. I have tested Debian, Ubuntu, Fedora, Suse, Mageia, Mandriva Slackware, PCLinuxOS, Gentoo and Sabayon. There are also a couple of hints for Mac OSX. I have failed to install several other distributions and I have not verified all the installation instructions in several years so there are probably many obsolete packages.
Maybe this: echo "Old Fedora: yum install libusb1-devel" echo "New Fedora: yum install libusbx-devel" One or the other should install libusb-1.0.so but I guess the package name could have changed again??
This is good. That's the URL I had on the RFP bug so I know we're both looking at the same thing.
There is a repo. Download like this: svn checkout https://svn.code.sf.net/p/linrad/code/trunk linrad
Ok, cool. We normally aim to base our packages on releases, but having a link to the upstream development codebase is always useful so we can check to see if you've already fixed things if we find things are broken. OK. I post releases here occasionally: http://www.sm5bsz.com/linuxdsp/linrad.htm The development code is likely to contain new bugs now and then so packaging releases should be the appropriate strategy.
So, on the website it says "Linrad and watzo are free software. They are free for anyone to use for any purpose." which worried me slightly, but I see there is a LICENSE file in the Subversion repository. Does this license apply to all files in the source repository? The reason that worried me is that for Debian and Fedora we require not only that software is free to use, but also other rights such as distribution, modification, etc. Please read the entire text: "It is free for anyone for any purpose. Copyright laws are complicated and to make sure I will not change my mind and claim copyright Linrad comes with the MIT license starting with version 03-45. By granting a very permissive license to anyone who has obtained a copy of Linrad there should be no doubt that the freedom to use linrad or parts of the code for any purpose will remain for ever."
"Use the code for any purpose" means ANY purpose such as distribution, modification, etc. To further clarify the files come with the MIT license. There is a zz-COPYRIGHT.txt file containing the MIT license. This is the most free license I have found. Regards Leif