Hello,
I have a grey-area issue. The new version of the clementine player comes bundled with 3rd party source files: sha2 [1], echoprint-codegen [2].
There are no licensing issues. Unfortunately, neither of the two upstreams provide their source files as libraries. From the descriptions in their webpages [1] and [2], they seem to me as "take this code and use it in your project as you wish".
The question is, how do you think this would play with our guidelines?
Thanks, Orcan
PS: A similar question arose during the package review of clementine for the bundled universalchardet source files. At the time, we allowed it through noting that there were other packages in Fedora bundling universalchardet sources.
[1] http://www.aarongifford.com/computers/sha.html [2] https://github.com/echonest/echoprint-codegen
On 01/13/2012 05:49 AM, Orcan Ogetbil wrote:
Hello,
I have a grey-area issue. The new version of the clementine player comes bundled with 3rd party source files: sha2 [1], echoprint-codegen [2].
There are no licensing issues. Unfortunately, neither of the two upstreams provide their source files as libraries. From the descriptions in their webpages [1] and [2], they seem to me as "take this code and use it in your project as you wish".
The question is, how do you think this would play with our guidelines?
[...]
[1] http://www.aarongifford.com/computers/sha.html [2] https://github.com/echonest/echoprint-codegen
I don't see anything unusal with both of these packages - Am I missing something?
IMO, these should be packaged as "ordinary packages".
Ralf
On Fri, Jan 13, 2012 at 12:08 AM, Ralf Corsepius wrote:
On 01/13/2012 05:49 AM, Orcan Ogetbil wrote:
Hello,
I have a grey-area issue. The new version of the clementine player comes bundled with 3rd party source files: sha2 [1], echoprint-codegen [2].
There are no licensing issues. Unfortunately, neither of the two upstreams provide their source files as libraries. From the descriptions in their webpages [1] and [2], they seem to me as "take this code and use it in your project as you wish".
The question is, how do you think this would play with our guidelines?
[...]
[1] http://www.aarongifford.com/computers/sha.html [2] https://github.com/echonest/echoprint-codegen
I don't see anything unusal with both of these packages - Am I missing something?
IMO, these should be packaged as "ordinary packages".
Can you define "ordinary packages"? Should I write a Makefile or a shell script and turn the source files into shared libraries with some random sonames, and patch clementine to use these libraries?
Orcan
On 01/13/2012 06:20 AM, Orcan Ogetbil wrote:
On Fri, Jan 13, 2012 at 12:08 AM, Ralf Corsepius wrote:
On 01/13/2012 05:49 AM, Orcan Ogetbil wrote:
Hello,
I have a grey-area issue. The new version of the clementine player comes bundled with 3rd party source files: sha2 [1], echoprint-codegen [2].
There are no licensing issues. Unfortunately, neither of the two upstreams provide their source files as libraries. From the descriptions in their webpages [1] and [2], they seem to me as "take this code and use it in your project as you wish".
The question is, how do you think this would play with our guidelines?
[...]
[1] http://www.aarongifford.com/computers/sha.html [2] https://github.com/echonest/echoprint-codegen
I don't see anything unusal with both of these packages - Am I missing something?
IMO, these should be packaged as "ordinary packages".
Can you define "ordinary packages"?
:) Well, I don't see anything unusal with these packages, which would require them to be copylibs. To me, they just seem to lack a built-in infrastructure to "build + install" them. This is not unusal (esp. with packages originating from an academic background).
Should I write a Makefile or a shell script and turn the source files into shared libraries with some random sonames, and patch clementine to use these libraries?
More or less yes. You would not necessarily have "to write Makefiles" and "to add shared libs", but something along these lines.
Ralf
On Fri, Jan 13, 2012 at 12:20:29AM -0500, Orcan Ogetbil wrote:
Can you define "ordinary packages"? Should I write a Makefile or a shell script and turn the source files into shared libraries with some random sonames, and patch clementine to use these libraries?
You can even call directly the compiler in the spec file with correct options, and/or ar.
To avoid the soname issue, you can only provide a static library. If you really want to do a shared library, it is not obvious to choose a soname, as you would not want a soname that clashes with soname introduced upstream later.
So, if you want shared libraries, the best, in my opinion, is to contact upstream and propose them a build system for libraries. If they don't want it, a good thing may be to collaborate with other distros, if the libraries are in other disctros, to have common sonames, and go back to upstream to tell them what soname was used and the issue with clashing sonames such that they can write a not somwhere tu use this soname (or not, depending whether they introduced ABI incompatibilities).
Orcan Ogetbil wrote:
I have a grey-area issue. The new version of the clementine player comes bundled with 3rd party source files: sha2 [1], echoprint-codegen [2].
There are no licensing issues. Unfortunately, neither of the two upstreams provide their source files as libraries. From the descriptions in their webpages [1] and [2], they seem to me as "take this code and use it in your project as you wish".
These probably could be considered under the 'copylib' exception, though it may be worth trying to package these separately anyway, if possible (likely a better long-term solution, esp if your modifications can be upstreamed).
-- rex
packaging@lists.fedoraproject.org