1 |
On Fri, Feb 12, 2010 at 04:24:05PM -0800, Zac Medico wrote: |
2 |
> On 02/12/2010 01:38 PM, Brian Harring wrote: |
3 |
> > On Fri, Feb 12, 2010 at 12:54:21PM -0800, Zac Medico wrote: |
4 |
> >> Hi, |
5 |
> >> |
6 |
> >> I'm thinking about adding a UUID file in /var/db/pkg, for comparing |
7 |
> >> installed packages to binary packages. We already have BINPKGMD5, |
8 |
> >> but the problem with that is that the MD5 of a binary package |
9 |
> >> changes when it's updated for package moves. A UUID would be |
10 |
> >> assigned at build time and remain constant thereafter. We can use |
11 |
> >> python's uuid.uuid4() function to generate a random UUID. Any |
12 |
> >> suggestions for alternative approaches? |
13 |
> > |
14 |
> > Purpose? |
15 |
> > ~harring |
16 |
> |
17 |
> If you build binary packages for installation on multiple systems, |
18 |
> and periodically have to rebuild packages for various reasons |
19 |
> (revdep-rebuild or whatnot), it makes it easier to know whether a |
20 |
> particular system has the latest build installed. Then you can |
21 |
> create a package set that reinstalls any installed packages that are |
22 |
> not the latest build. |
23 |
> |
24 |
> It's basically a catch-all for rebuilds that aren't tracked by other |
25 |
> kinds of metadata yet. Eventually, we should introduce metadata to |
26 |
> indicate when things need to be reinstalled, as discussed in this bug: |
27 |
> |
28 |
> https://bugs.gentoo.org/show_bug.cgi?id=192319 |
29 |
> |
30 |
> In the mean time, it's nice to have a catch-all for keeping systems |
31 |
> synchronized with the latest builds. We may want to consider |
32 |
> including it in the $PKGDIR/Packages file as a convenience for |
33 |
> binhost users. |
34 |
|
35 |
This gets nasty... you're basically talking about the rpm equivalent |
36 |
of EPOCH. |
37 |
|
38 |
Not a fan of an adhoc UUID (especially since it'll become standard |
39 |
via portage doing it), but a *timestamp* for the build, labeled as |
40 |
such, gets you what you want and is usable for other things- detecting |
41 |
when to rebuild a scm package for example. |
42 |
|
43 |
That route gets my vote, and should also address your intentions. |
44 |
~harring |