Gentoo Archives: gentoo-user

From: "Mickaël Bucas" <mbucas@×××××.com>
To: Gentoo <gentoo-user@l.g.o>
Subject: Re: [gentoo-user] Missing digest for *** Tree looks messed up.
Date: Mon, 10 Aug 2015 09:19:49
Message-Id: CAG1=SYRzYESZnxLFWMBuyQYsJ7NYf6HZ3jEU7QhjoDSSZw_TYQ@mail.gmail.com
In Reply to: Re: [gentoo-user] Missing digest for *** Tree looks messed up. by "Mickaël Bucas"
1 2015-08-10 10:55 GMT+02:00 Mickaël Bucas <mbucas@×××××.com>:
2 >
3 >
4 > 2015-08-10 2:15 GMT+02:00 Dale <rdalek1967@×××××.com>:
5 > >
6 > > Howdy,
7 > >
8 > > I'm sure I'm not alone on monitoring -dev to see upcoming changes. I
9 > > noticed they switched to git or something and it seems to have caused a
10 > > bit of trouble. At least I think it may have. I did my usual 'eix-sync
11 > > && emerge -uvaDN world'. The sync took MUCH longer than usual. I'm
12 > > talking a WHOLE LOT longer than usual. My first thought, one time thing
13 > > because of the changes, maybe. Then I got a screen full of this sort of
14 > > stuff.
15 > >
16 > >
17 > >
18 > > * Missing digest for
19 > >
20 '/var/cache/portage/tree/media-libs/fontconfig/fontconfig-2.11.1-r2.ebuild'
21 > [...]
22 >
23 > I got a similar list about all my installed packages. The reason is that
24 the Manifest files have changed.
25 > Before there was a digest for each ebuild in a category, as can be seen
26 here :
27 >
28 https://github.com/gentoo/gentoo-portage-rsync-mirror/blob/master/kde-base/knotes/Manifest
29 > Now there is only the digests for source files
30 > https://gitweb.gentoo.org/repo/gentoo.git/tree/kde-base/knotes/Manifest
31 >
32 > >
33 > > Can I take that "just saying" above back and say FUBAR instead? :-(
34 > >
35 > > Thoughts??
36 > >
37 > > Dale
38 >
39 > Either the Manifest generator encountered a problem, or the digest for
40 ebuilds is not necessary in new versions of portage, but the latter is less
41 likely in my opinion as it would lower overall security.
42 > I didn't find a bug about this subject, but I don't really know what and
43 where to search...
44
45 So the answer was in Git history, in the first commit :
46 https://gitweb.gentoo.org/repo/gentoo.git/log/kde-base/knotes/Manifest?showmsg=1
47
48 "3. Transform all Manifests to thin"
49
50 https://wiki.gentoo.org/wiki/Repository_format/package/Manifest
51 "A Thin Manifest is a Manifest file in which checksums are stored only for
52 distfiles (*DIST* type) and not for files inside the repository. The
53 motivation for that is whenever the repository is fetched through a VCS
54 which ensures local file integrity already."
55
56 I think I understand the problem a bit better : the CVS repository
57 contained classic Manifest files, and was exposed directly to rsync. The
58 Git repository contains only thin Manifest, but has been set as the source
59 for rsync at one point !
60
61 This has already been reported, and solved.
62 https://bugs.gentoo.org/show_bug.cgi?id=557184
63
64 Best regards
65 Mickaël Bucas