From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kei Kebreau Subject: Re: [PATCH] gnu: Add p7zip. Date: Tue, 09 Aug 2016 16:06:48 -0400 Message-ID: <87oa51puzr.fsf@openmailbox.org> References: <87a8gwxa9c.fsf@openmailbox.org> <87y44f4plm.fsf@mdc-berlin.de> <20ae08af155acdc7edd02b68afb9e66d@openmailbox.org> <20160808195835.GF18650@jasmine> <871t1y74fe.fsf@mdc-berlin.de> <87d1lheore.fsf@mdc-berlin.de> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:47760) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bXDIl-0003C4-NY for guix-devel@gnu.org; Tue, 09 Aug 2016 16:07:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bXDIh-000806-Ev for guix-devel@gnu.org; Tue, 09 Aug 2016 16:07:02 -0400 Received: from mail.openmailbox.org ([62.4.1.34]:47207) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bXDIh-000802-5A for guix-devel@gnu.org; Tue, 09 Aug 2016 16:06:59 -0400 In-Reply-To: <87d1lheore.fsf@mdc-berlin.de> (Ricardo Wurmus's message of "Tue, 9 Aug 2016 21:16:53 +0200") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Ricardo Wurmus Cc: guix-devel@gnu.org Ricardo Wurmus writes: > kei@openmailbox.org writes: > >> On 2016-08-09 04:05, Ricardo Wurmus wrote: >>> Leo Famulari writes: >>>=20 >>>>> > I see that you took care of removing non-free parts in a patch and a >>>>> > build phase. Since =E2=80=9Cguix build -S p7zip=E2=80=9D doesn=E2= =80=99t run the build phase >>>>> > users would still end up with a source archive containing the non-f= ree >>>>> > parts. The best way is thus to remove things in a snippet. >>>>> > >>>>> > In =E2=80=9Cshogun=E2=80=9D from the =E2=80=9Cmachine-learning=E2= =80=9D 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=E2=80= =99t be >>>>> > feasible for p7zip. >>>>>=20 >>>>> Also note that it is not completely desirable for nonfree code to be= =20 >>>>> removed >>>>> with a patch, and is one of the reasons Guix supports snippets in the= =20 >>>>> first >>>>> place. >>>>=20 >>>> 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? >>>=20 >>> We don=E2=80=99t want to have a =E2=80=9Creverse image=E2=80=9D of the = non-free code in a=20 >>> patch. >>> Arguably that would just be a derivative of the non-free code, so we >>> also couldn=E2=80=99t freely distribute it. >>>=20 >> If this is the case, then should we alert the Parabola GNU/Linux-libre=20 >> packagers? >> The patch I submitted is the same one they use when installing p7zip=20 >> from the >> source code (see=20 >> 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=E2= =80=99s > 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) =E2=80=94 for everythi= ng else > it=E2=80=99s just a matter of patching the files. If I=E2=80=99m not mis= taken 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. :-)