Packaging Linrad for Fedora

John C. Peterson jcp at shellx.eskimo.com
Tue Apr 7 20:46:37 EDT 2015


On Tue Apr 7 07:27:42 EDT 2015, Leif Asbrink wrote:
> > The first step in Fedora packaging is to check all the licensing
> > issues. Iain has already done the important leg work of verifying that
> > the license (MIT) is acceptable to Fedora, so that's an important hurdle
> > that's been cleared.
> Hello John,
> There is a non-free library for Perseus that is available as source
> code on the Internet, a non-free rpm package for Elad FDM-S1. 
> Linrad comes with the commands required to download and install them.
> There is also the Adlink PCIe-9842 for which one has to sign 
> a non-disclosure agreement to get the source code. (It provides
> a real-time bandwidth of 100 MHz!)

Hi Leif,

There would be some other "leg work" to do before packaging Linrad,
namely packaging the software that it depends on. Some of the
dependencies have already been packaged, some of them have not.
(For example, I just checked and Fedora has nasm and svgalib
already packaged). We would want to get the other dependencies
with suitable license terms (like rtl-sdr, etc.) packaged first.

As far as the dependencies you described above, they could not
be packaged for Fedora. (Don't shoot the messenger. For every
piece of software I have packaged, I have had to give up on
5 or 10 others because they didn't have licenses suitable for
Fedora). The reviewers are very strict about this. It's the
price we pay for living in a society that has become so litigious.

There are two solutions to this problem. One would be to modify
Linrad to look for shared libs with the needed device support at
run time, using something like dlopen().

Another approach would be to provide instructions for users on
how to get the non-freely licensed dependencies installed and then
rebuild the Linrad rpm (the command "rpmbuild -ba linrad.spec"
does that). There are already a few other Fedora packages that do
this. One example is the Atlas linear algebra package. It optimizes
itself to your hardware at compile time, so there is simply NO way
to distribute Atlas packages that are optimized for all machines.
If you want an optimized Atlas for your system, you must rebuild
it yourself.


>  
> > I don't think it would deter your changes of a Linrad package getting 
> > approved, but I did notice one thing that could use a little polish. Unix
> > (and Linux) users often have an expectation that parameter files are
> > always installed in a standard location (rather than the CWD).
> This would be a really bad idea. It is often a good idea to run
> several instances of Linrad in parallel and then they need different
> parameters. The implications of your suggestion is that there should
> be a layer on top of the parameter settings in which the user could 
> browse a linrad directory for a certain set of parameters. Also functions
> to copy parameter sets would be needed. Actually the functions 
> that the normal directory three supplies. This would make Linrad more
> difficult to use and would become an obstacle for users so if it is 
> a requirement for a Fedora package I feel it is better to leave
> Linrad unpackaged.

As I mentioned, this probably would not get the package rejected. Just
expressing a personal preference.

I hope you are not too discouraged, packaging is a lengthy and often
annoying and tedious process.

73, John

-- 
John C. Peterson, KD6EKQ
mailto:jcp at eskimo.com
San Diego, CA U.S.A




More information about the Fedora-hams mailing list