guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] gnu: Add p7zip.


From: Kei Kebreau
Subject: Re: [PATCH] gnu: Add p7zip.
Date: Fri, 12 Aug 2016 15:29:40 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)

Ricardo Wurmus <address@hidden> writes:

> Kei Kebreau <address@hidden> writes:
>
>> Ricardo Wurmus <address@hidden> writes:
>>
>>> address@hidden writes:
>>>
>>>> On 2016-08-09 04:05, Ricardo Wurmus wrote:
>>>>> Leo Famulari <address@hidden> writes:
>>>>> 
>>>>>>> > I see that you took care of removing non-free parts in a patch and a
>>>>>>> > build phase.  Since “guix build -S p7zip” doesn’t run the build phase
>>>>>>> > users would still end up with a source archive containing the non-free
>>>>>>> > parts.  The best way is thus to remove things in a snippet.
>>>>>>> >
>>>>>>> > In “shogun” from the “machine-learning” module we remove supporting 
>>>>>>> > code
>>>>>>> > for non-free features in a snippet by cutting out anything between 
>>>>>>> > some
>>>>>>> > ifdef markers, but looking at the patch I see that it wouldn’t be
>>>>>>> > feasible for p7zip.
>>>>>>> 
>>>>>>> Also note that it is not completely desirable for nonfree code to be 
>>>>>>> removed
>>>>>>> with a patch, and is one of the reasons Guix supports snippets in the 
>>>>>>> first
>>>>>>> place.
>>>>>> 
>>>>>> Is there a reason to not use a patch in this case? Or can we proceed
>>>>>> with packaging p7zip, using a patch to remove non-free parts?
>>>>> 
>>>>> We don’t want to have a “reverse image” of the non-free code in a 
>>>>> patch.
>>>>> Arguably that would just be a derivative of the non-free code, so we
>>>>> also couldn’t freely distribute it.
>>>>> 
>>>> If this is the case, then should we alert the Parabola GNU/Linux-libre 
>>>> packagers?
>>>> The patch I submitted is the same one they use when installing p7zip 
>>>> from the
>>>> source code (see 
>>>> https://git.parabola.nu/abslibre.git/tree/libre/p7zip/libre.patch).
>>>
>>> I see.  I think we first need to figure out exactly what license applies
>>> to which part of the code.  A big chunk of the patch is to remove
>>> references to RAR stuff in the build system and the documentation; that
>>> could probably be removed with a patch.  What is critical is code that’s
>>> actually under the unRAR license.
>>>
>>> A quick look at the patch shows me this:
>>>
>>>> -  Licenses for files are:
>>>> -
>>>> -    1) CPP/7zip/Compress/Rar* files:  GNU LGPL + unRAR restriction
>>>> -    2) All other files:  GNU LGPL
>>>
>>> (https://git.parabola.nu/abslibre.git/tree/libre/p7zip/libre.patch#n540)
>>>
>>> This means that we need to delete all files in (1) — for everything else
>>> it’s just a matter of patching the files.  If I’m not mistaken this
>>> means that deleting the files in a snippet and applying this patch on
>>> top of it would be okay.
>>>
>>> What do others think?
>>>
>>> ~~ Ricardo
>>
>> Just to clarify, I'm interpreting what you are saying as:
>>
>> (1) Remove proprietary files in a snippet so "guix build -S p7zip" only
>> returns free source code, and
>>
>> (2) Apply the patch to get rid of the resultant unused code.
>>
>> If you mean those two things, then it sounds like a fine solution to
>> me. :-)
>
> Yes, that’s what I meant.  I hope I didn’t overlook anything here, so
> I’d be happy if someone else could check that this is fine.
>
> ~~ Ricardo

Here's the corresponding patch. Maybe you or someone else can double (or 
triple?)
check and make sure there are no proprietary files the source after running
"./pre-inst-env guix build -S p7zip."

Attachment: 0001-PATCH-gnu-Add-p7zip.patch
Description: Text document

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]