Gentoo Archives: gentoo-user

From: Andreas Fink <finkandreas@×××.de>
To: gentoo-user@l.g.o
Subject: Re: [gentoo-user] binary packages: how to ...
Date: Wed, 15 Jul 2020 05:07:15
Message-Id: 0M09ZI-1kizGz1lwC-00uG0z@smtp.web.de
In Reply to: Re: [gentoo-user] binary packages: how to ... by Ashley Dixon
1 On Wed, 15 Jul 2020 00:46:58 +0100
2 Ashley Dixon <ash@××××××××××.uk> wrote:
3
4 > On Tue, Jul 14, 2020 at 11:24:31PM +0200, n952162 wrote:
5 > > binary packages: how to:
6 > >
7 > > 1. find out if a package is binary before you install it (e.g. where on
8 > > app-arch/rar does it say it's a binary package)
9 >
10 > RAR is an unusual case, with both the "mirror" and "bindist" flags set in the
11 > RESTRICT variable (i.e., Gentoo cannot legally mirror the package, and you're
12 > not allowed to redistribute binaries either). I couldn't find anything in the
13 > ebuild which suggests it is a binary package; perhaps this is something that
14 > should be reviewed by the Gentoo developers, as most packages supporting a
15 > binary distribution provide a separate package with the `-bin` suffix, although
16 > I suppose this doesn't make much sense when there is no source package.
17 >
18 > The entire RAR business model of free decompression and paid compression has
19 > caused confusion for many people over many decades. I'd always stick to 7zip or
20 > one of the classic UNIX compression utilities, if I had a choice.
21 >
22 > > 2. inhibit their installation
23 >
24 > Don't install them. ;-)
25 >
26 > More seriously: there's not that many of them, so it's probably not a process
27 > worth automating, unless you're on a multi-user machine, in which untrusted
28 > users can install packages - although I think you'd have more significant
29 > problems at that point. As you've unfortunately discovered, there isn't much of
30 > a concrete framework in place to automatically detect binary packages, which
31 > also makes Point (3) difficult.
32 >
33 > > 3. get a list of the ones installed on a system
34 >
35 > `EIX_LIMIT=0 eix --only-names -I *-bin`, perhaps ? Unfortunately, this won't
36 > catch the unusual cases, as seen with `app-arch/rar`.
37 >
38 > > Any ideas about that are appreciated.
39 >
40 > [1] might be worth a read; it's quite comprehensive, and gives you a glimpse
41 > into the inner-workings of Portage, allowing you to fix these issues yourself.
42 >
43 > Something to note: "bindist", as the USE-flag and RESTRICT option, does not mean
44 > "use a binary distribution", but rather "compile the package in such a way that
45 > I can redistribute my build without putting myself in a legal problem with the
46 > package authors" (this commonly is synonymous with disabling official branding):
47 >
48 > $ ash-euses -sk bindist
49 >
50 > dev-libs/openssl:bindist - Disable/Restrict EC algorithms (as they seem to be patented) -- note: changes the ABI
51 > dev-libs/openssl-compat:bindist - Disable/Restrict EC algorithms (as they seem to be patented) -- note: changes the ABI
52 > dev-qt/qtnetwork:bindist - Disable EC support via dev-libs/openssl
53 > mail-client/thunderbird:bindist - Disable official Firefox/Thunderbird branding (icons, name) which are not binary-redistributable according to upstream.
54 > media-libs/freetype:bindist - Disable ClearType support (see http://freetype.org/patents.html)
55 > net-libs/liboauth:bindist - Alias for the nss USE flag, since there are license compliancy trouble when using OpenSSL.
56 > net-misc/openssh:bindist - Disable EC/RC5 algorithms in OpenSSL for patent reasons.
57 > sys-apps/ucspi-ssl:bindist - Disable EC/RC5 algorithms in OpenSSL for patent reasons.
58 > www-client/firefox:bindist - Disable official Firefox branding (icons, name) which are not binary-redistributable according to upstream.
59 >
60 > Hope this helps,
61 > Ashley.
62 >
63 > [1] https://wiki.gentoo.org/wiki/Binary_package_guide
64 >
65 Searching for -bin does not help to find binary only packages. Two more
66 examples, which are binary only:
67 zoom, skypeforlinux
68
69 Searching for -bin mostly (if not always) implies that there would be a
70 possibility to compile it from source.
71
72 In my experience so far, every binary-only package does not have an open
73 source license. So mostly you'll hit a license issue and you have to
74 accept the license (/etc/portage/package.license) before you will be
75 able to merge the package. Any license issue should start make you
76 thinking what is going on, since it is a potential binary-only package.
77 Installation of these packages is inhibited by emerge, because you have
78 to accept the license first ;)
79 When I look into my /etc/portage/package.license file I get a good idea
80 of which packages are binary only. Not all of them are pure binary
81 packages, but it is a superset as far as I can tell.
82
83 To conclude: You cannot find out if a package is binary only with
84 emerge. You have to do the research yourself, but
85 /etc/portage/package.license is a good starting point to find potential
86 candidates.
87
88 Cheers
89 Andreas

Replies

Subject Author
Re: [gentoo-user] binary packages: how to ... n952162 <n952162@×××.de>