Gentoo Archives: gentoo-dev

From: Kent Fredric <kentnl@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] [pre-GLEP] Gentoo binary package container format
Date: Mon, 19 Nov 2018 20:47:57
Message-Id: 20181120094645.07c21f7e@katipo2.lan
In Reply to: Re: [gentoo-dev] [pre-GLEP] Gentoo binary package container format by Fabian Groffen
1 On Sun, 18 Nov 2018 12:00:48 +0100
2 Fabian Groffen <grobian@g.o> wrote:
3
4 > Your point is that the format is broken (== relies on obscure compressor
5 > feature). My point is that the format simply requires a special tool.
6 > The fact that we prefer to use existing tools doesn't imply in any way
7 > that the format is broken to me.
8 > I think you should rewrite your point to mention that you don't want to
9 > use a tool that doesn't exist in @system (?) to unpack a binpkg. My
10 > guess is that you could use some head/tail magic in a script if the
11 > trailing block is upsetting the decompressor.
12
13 The existing design to the best of my understanding poses problems when
14 it comes to adding new features, as the dependency on a "special tool"
15 becomes the bottleneck, as in order to add the new feature, the special
16 tool has to be adjusted to handle it, and potentially introduce serious
17 incompatible changes.
18
19 The alternative proposal stated in this pre-GLEP seems infinitely more
20 extensible, which means more room for 3rd-parties to add their own
21 features, while retaining basic portage interop.
22
23 For instance, I think a "nice" feature that could be added one day
24 would be the ability for the automated package builder to bundle:
25
26 - The ebuild that was used to build it
27 - All the eclasses that were used by the ebuild
28 - All the sources and patches that were used
29
30 And therein creating a fat bin/src hybrid, potentially allowing
31 rebuilding the exact same package with minor changes, independently of
32 portage repository changes.
33
34 And this may be useful for people who don't want the option set in the
35 binary build, but otherwise want the exact same material in a different
36 configuration.
37
38 In terms of user-friendliness, this could empower Gentoo in new ways,
39 in ways that compete with existing binary distributions wherein
40 upstreams publish .deb files for people to "just install".
41
42 Presently, the amount of additional hand-holding required (namely:
43 install this overlay, make sure you sync it right, etc, etc, etc) makes
44 it a little too "hands on" for some.
45
46 Now, I'm not saying Gentoo *should* do exactly this, but I like that
47 this approach gives us the *potential* to do this, and resultingly,
48 some downstream derivatives of Gentoo may be motivated to do something
49 like this, proving usable stand-alone bin-packages which interop nicely
50 with standard Gentoo installations, while also working nicely with
51 downstreams customizations.
52
53 Achieving this as it is requires downstream to develop their own
54 format, which is likely not going to work with standard Gentoo installs.