Gentoo Archives: gentoo-user

From: Mark Knecht <markknecht@×××××.com>
To: gentoo-user@l.g.o
Subject: Re: [gentoo-user] Would emerge --sync remove old profiles?
Date: Sat, 26 Apr 2008 23:04:05
Message-Id: 5bdc1c8b0804261604y1da7018bxd70886a0cd6b7a4c@mail.gmail.com
In Reply to: Re: [gentoo-user] Would emerge --sync remove old profiles? by Alan McKinnon
1 Hi Alan,
2 Thanks for the reply.
3
4 Also, up front, I'm thinking that my tone is somehow being
5 misinterpreted. I'm not at all high energy about this. I'm worried now
6 it's not coming across the way I'm feeling about this. Low key. Low
7 stress. Just looking to make things better in the future. Nothing
8 more. I hope folks understand that. If not I apologize as it's hard to
9 convey energy.
10
11 On Sat, Apr 26, 2008 at 1:00 PM, Alan McKinnon <alan.mckinnon@×××××.com> wrote:
12 > On Saturday 26 April 2008, Mark Knecht wrote:
13 >
14 > > I don't buy that it's my issue created by a long time between
15 > > updates. I could turn on any machine that's sitting in a junk heap or
16 > > back room somewhere. It hasn't been powered up in a long time. I log
17 > > in and want to figure out what's in front of me with respect to
18 > > updates. I type emerge sync and portage deletes files. to me that's
19 > > just wrong.
20 >
21 > Mark,
22 >
23 > This might be worth discussing. I know you said "enough of this" later
24 > on
25
26 Really only because I don't want to drive people nuts or wear out my
27 welcome. I'm interested in talking about it. Maybe something good will
28 come along one day because of the conversation.
29
30 > but enough users run into conceptually similar issues to make it
31 > worth while. Examples: someone needs a specific kernel version for some
32 > hardware and it goes away from portage or weird video cards where only
33 > ATIs magic from 2005 actually works.
34 >
35 > First, let's look at the real source of the problem: using rsync to
36 > download the tree. To know what will change or what's new portage needs
37 > a new tree, and there is no summary for that. It really needs two trees
38 > to run a diff against and it has to be done locally - the rsync server
39 > is clueless about what you currently have. So basically to tell you
40 > what will change, portage has to have a new tree which nukes the old
41 > stuff...
42
43 OK, so rsync itself is where the real magic is that exposes what I
44 consider a weakness? Good info.
45
46 >
47 > One could write a dual-portage thingy that replicates what you have then
48 > does emerge --sync, and also has an --undo fetaure for just in case.
49 > Ughh. One must take account of the portage db, the metacache and other
50 > bits as well.
51 >
52 > So how about something that creates overlays for you? As a wrapper to
53 > emerge?
54
55 This is, I think, exactly what I've been suggesting, assuming portage
56 or the wrapper can get in between rsync and my personal data. I
57 consider my copy of portage data 'personal data' but then again I have
58 to take responsibility for using a program that erases my data. Any
59 alternatives to rsync? ;-) (Really, just kidding!)
60
61 > It could have options to convert various bits of the current
62 > system to private overlays, and generate a decent cache to speed things
63 > up (the current state of affairs will not cache a local overlay by
64 > default so it's really slow). I'm thinking of these things:
65 >
66 > - Install every currently installed ebuild to an overlay, or install
67 > specific ebuilds or specific categories to an overlay.
68 > - Copy an installed ebuild and it's entire installed DEPEND tree to an
69 > overlay - this is for cases where <arb_lib> is not in world but is
70 > required as a deep dependency of something that is. The user will
71 > probably not be aware of this dependency and not having that ebuild
72 > will break stuff.
73 > - Copy an entire profile to an overlay
74 > - Copy everything in an installed ebuild's SRC_URI (or all installed
75 > ebuilds) to a different DISTDIR for safety (think ATI driver downloads
76 > or kernels here)
77 > - Remove old ebuilds and profiles from the overlay that you have since
78 > upgraded
79 > - Possibly more
80 >
81
82 Yeah, sounds like lots of work, and in my mind probably not worth the
83 effort. I'm thinking of something as conceptually simple (if possible)
84 as
85
86 emerge --sync-test
87
88 which instead of actually syncing would just tell me what is going to
89 be added and/or removed from my copy of the portage tree. I could then
90 look look for any overlaps between that data and the output of eix -Ic
91 and move them to my overlay by hand.
92
93 Maybe the script you are speaking of could look for the overlaps, etc.
94 using eix -Ic itself? Just an idea.
95
96 Again, the ONLY things I would be interested in saving are things I
97 currently have installed. If it's not installed then it's of no
98 immediate interest to me.
99
100 > Such a script would do the backup you wished you had done for your
101 > folks, but only the bits you had installed (not everything), then run
102 > emerge. You get a good compromise between you needing old stuff to be
103 > around and the dev's perfectly reasonable desire to not have to support
104 > old stuff not in common use.
105 >
106 > It could be implemented one of these ways:
107 > - a new feature to portage - highly unlikely considering the fear and
108 > dread that comes with modifying portage in it's current state
109 > - a new feature to paludis - this might be possible as I believe
110 > paludis' code design is quite sane
111 > - a wrapper around emerge (easiest and most likely to benefit the
112 > largest numbers if interested users)
113 >
114
115 It sounds like plaudis might be a place to try to find long term
116 support for an idea like this. I've not used it so I'll check it out.
117 That said you're comments about about it backing up only the little
118 bits I had installed is what seems the most useful to me, and possibly
119 to others also. If that back is a move operation to my obsolete
120 overlay directory then everything still works even though it's no
121 longer in portage. Sounds great.
122
123 Thanks,
124 Mark
125 --
126 gentoo-user@l.g.o mailing list