Gentoo Archives: gentoo-portage-dev

From: Duncan <1i5t5.duncan@×××.net>
To: gentoo-portage-dev@l.g.o
Subject: [gentoo-portage-dev] Re: [RFC] New file layout for PKGDIR and binhosts
Date: Thu, 25 Dec 2014 10:03:38
Message-Id: pan$b1419$e1e399a$2a866890$b1ebacbb@cox.net
In Reply to: Re: [gentoo-portage-dev] [RFC] New file layout for PKGDIR and binhosts by Zac Medico
1 Zac Medico posted on Wed, 24 Dec 2014 00:13:57 -0800 as excerpted:
2
3 >> If there were some way to
4 >> get all the info for the binpkgs into one file (so it could be run on
5 >> cron or something), this could mean that I'd only have to do one file
6 >> request for all that metadata and would be much quicker than inspecting
7 >> all those files.
8 >
9 > That's what $PKGDIR/Packages is.
10
11 This is a good excuse to ask a question that has bothered me for some
12 time, plus make a request for the new eclean-pkg replacement...
13
14 Normally I like to keep several old binpkgs around for troubleshooting
15 reference or quick-install, but the combined set of kde packages, for
16 instance, can get pretty big, and with monthly iterations, they build up
17 pretty fast.
18
19 But eclean-pkg doesn't have an easy way to say clean up /just/ kde-base/
20 *, leaving the currently installed version and one previous version for
21 reference, cleaning out all others. (Sure I could put /everything/ else
22 on the exclude list, but what's really needed is an include list, plus a
23 "keep N more" option.)
24
25 So I often end up cleaning packages like that out manually by simply
26 deleting them. My question is thus, does the remaining index/db/cache
27 entry get cleaned properly (when?) or am I leaving uncleanable garbage
28 behind when I do this?
29
30 Which of course translates into a couple of feature requests for the new
31 eclean-pkg:
32
33 1) Make it possible to clean only selected pkgs or categories.
34
35 2) Have an option to clean up and/or regenerate the cache/index/db/
36 whatever files, re-syncing them with what's actually there.
37
38
39 Meanwhile, another possible usage for multiple binpkgs per ebuild:
40
41 I commonly run live-builds (mostly kde, tho I'm not ATM), and would
42 /love/ to be able to keep about three generations (current plus two back)
43 around, ideally IDed by their git-commit or the like. Running live
44 packages can mean even more risk than usual of something not working out,
45 but currently, if the package builds, by the time you find that out,
46 you've obliterated your previous *9999 binpkg and even figuring out which
47 git commit it was isn't easy, let alone doing a quick binpkg rollback,
48 like you'd do with an ordinary version upgrade. Were multiple live-
49 binpkg-versions kept around, IDed by the git-commit or at least with that
50 info in the metadata somewhere, it'd make things /so/ much easier! =:^)
51
52 But of course that does make having an automated cleaner that can keep
53 just the last N package versions around while deleting the others, that
54 much more important.
55
56 --
57 Duncan - List replies preferred. No HTML msgs.
58 "Every nonfree program has a lord, a master --
59 and if you use the program, he is your master." Richard Stallman

Replies