Gentoo Archives: gentoo-portage-dev

From: "vivo75@×××××.com" <vivo75@×××××.com>
To: gentoo-portage-dev@l.g.o
Subject: Re: [gentoo-portage-dev] [RFC] New file layout for PKGDIR and binhosts
Date: Wed, 24 Dec 2014 18:38:03
Message-Id: 549B07C9.9090006@gmail.com
In Reply to: Re: [gentoo-portage-dev] [RFC] New file layout for PKGDIR and binhosts by Zac Medico
1 Il 24/12/2014 17:07, Zac Medico ha scritto:
2 > On 12/24/2014 04:01 AM, vivo75@×××××.com wrote:
3 >> Il 24/12/2014 09:13, Zac Medico ha scritto:
4 >>>> I like this (and it has been a long time coming). What format are we
5 >>>>> going to store the metadata of the use flag combinations and the rest?
6 >>> The current approach is to store the data in an xpak segment that is
7 >>> appended to the end of the tbz2 file. The $PKGDIR/Packages files serves
8 >>> as a cache for the essential parts of the xpak data that are used in
9 >>> dependency calculations.
10 >>>
11 >> I'd like to see the xpak data being put in it's own file at the
12 >> _beginning_ of the tar file.
13 >>
14 >> tar -Jcf \
15 >> ${PKGDIR}/${CATEGORY}/${PN}/${PF}-${COUNTER}.xpak \
16 >> tmp/${CATEGORY}:${PN}:${PF}-${COUNTER}.xpak \
17 >> *all_the_other_stuff*
18 >>
19 >> this way reading it could be faster on some media and filesystem and it
20 >> would not deviate from the standard tar.
21 > There wouldn't be any benefit, because the data is practically always
22 > read from the $PKGDIR/Packages cache anyway. The cache is generated when
23 > the package is built, and the rate-limiting step there is the building
24 > of the package.
25 ack, and what about emerge on destination host?
26 >> Being in /tmp/ is only for commodity but the place is debatable.
27 >> Instead the fact it _must_ be the first file it's not, in a sequential
28 >> archive file like tar some things depend on it.
29 > With the current approach, the xpak segment is not part of the tar file.
30 > The tar file is compressed, and the xpak segment is appended to the end
31 > of the resulting bzip2 file.
32 >
33 >> seem to be the right time to do the change, since tool need to be
34 >> rewritten anyway, but I'll leave to you analyze the fallout of this change.
35 > There will be zero benefits from doing that.
36 I see at least two however admittedly not too big
37
38 1) I see having a canonical tarball as an advantage, opposed to be
39 forced to use /usr/bin/{qtbz2,qxpak}
40
41 2) there is a small benefit in space (which increase using xz) for
42 bigger packages it would be smaller in percentage.
43
44 -rw-r--r-- 1 root root 8720 24 dic 18.25 linuxtv-dvb-headers-5.8.tar.bz2
45 -rw-r--r-- 1 root root 9691 24 dic 18.07 linuxtv-dvb-headers-5.8.tbz2
46
47 this has been obtained unpacking the xpak _and_ environment.bz2 (to
48 avoid double compression) and putting them in a subdirectory
49
50 ls -l tmp/linuxtv-dvb-headers-5.8/ usr
51 tmp/linuxtv-dvb-headers-5.8/:
52 total 80
53 -rw-r--r-- 1 root root 11 Dec 24 18:20 BUILD_TIME
54 -rw-r--r-- 1 root root 8 Dec 24 18:20 CATEGORY
55 -rw-r--r-- 1 root root 2 Dec 24 18:20 DEFINED_PHASES
56 -rw-r--r-- 1 root root 52 Dec 24 18:20 DESCRIPTION
57 -rw-r--r-- 1 root root 2 Dec 24 18:20 EAPI
58 -rw-r--r-- 1 root root 394 Dec 24 18:20 FEATURES
59 -rw-r--r-- 1 root root 1 Dec 24 18:20 IUSE
60 -rw-r--r-- 1 root root 30 Dec 24 18:20 KEYWORDS
61 -rw-r--r-- 1 root root 24 Dec 24 18:20 PF
62 -rw-r--r-- 1 root root 31 Dec 24 18:20 RDEPEND
63 -rw-r--r-- 1 root root 2 Dec 24 18:20 SIZE
64 -rw-r--r-- 1 root root 2 Dec 24 18:20 SLOT
65 -rw-r--r-- 1 root root 65 Dec 24 18:20 USE
66 -rw-r--r-- 1 root root 22859 Dec 24 18:21 environment
67 -rw-r--r-- 1 root root 443 Dec 24 18:20 linuxtv-dvb-headers-5.8.ebuild
68 -rw-r--r-- 1 root root 7 Dec 24 18:20 repository
69
70 usr:
71 total 9
72 drwxr-xr-x 3 root root 3 Dec 5 02:42 src

Replies