1 |
On Thu, 12 Mar 2009 09:56:47 +0200 |
2 |
Alan McKinnon <alan.mckinnon@×××××.com> wrote: |
3 |
|
4 |
> On Wednesday 11 March 2009 22:40:54 Michael Higgins wrote: |
5 |
|
6 |
> > Don't know the proper term, but I want to stop version updates for |
7 |
> > a while, yet allow package-rN updates... |
8 |
> |
9 |
> This doesn't seem to be a built-in feature of portage after a quick |
10 |
> scan of the man pages. But I can think of a method to do it the long |
11 |
> way round: |
12 |
> |
13 |
> The atom syntax you want is |
14 |
|
15 |
|
16 |
Well, I finally got a tuit, the round type, and applied to this question. |
17 |
|
18 |
I don't know about >~ or ~> syntax. Not sure if ~ will work in package mask. Maybe in package.unmask, though... which makes sense, to my understanding. To unmask ~anyversionof-1.2.3. |
19 |
|
20 |
But to package.mask? I can't make '~' work. So... what I want, I think, is >= in package.mask for the *next* version update, so it doesn't get pulled in anywhere. |
21 |
|
22 |
Here's the command line I used: |
23 |
|
24 |
qatom $(qlist -ICv) | awk '{print ">="$1"/"$2"-"$3}' |\ |
25 |
sort -u | perl -pe 's/^(.+(?:\.|-))(\d+)(?>([-_.\da-z]*))$/$1.($2+1)/ge' | \ |
26 |
grep -Pv $( echo $( eix -inc -\* |cut -d " " -f 2 ) |tr " " "|" ) >> /etc/portage/package.mask |
27 |
|
28 |
Anyway, that is what I wound up with. Unless I'm totally off, it works by removing funky version strings (that hideous regex) and bumping up by a digit whatever is left, skipping anything that is slotted (eix -inc). |
29 |
|
30 |
(We can't mask in a slot, AFAIK, but maybe someone else does know.) |
31 |
|
32 |
I deeply, newly updated system and world, ran the script above and repeated the deep new update to system and world. The list passed, in that I didn't mask any currently installed packages. '-) |
33 |
|
34 |
And today I got no updates to install after syncing the tree. Good so far. |
35 |
|
36 |
Time will tell, of course, if this really works. If there are no ebuilds offered with revision numbers, or new -rc -pre -whatever, I won't be bothered by them, is the plan. That is, if portage doesn't see 1.2.-rc_9999 as >=1.3 -- which is shouldn't, right? ;-) |
37 |
|
38 |
Then one day I'll remove my additions to package.mask and spend a day pulling out my hair (or watching the new, magic portage do it's beautiful thing...) but that's better than possibly doing that several times a month. And this without ignoring any revisions, bug fixes, and the like. |
39 |
|
40 |
Cheers, |
41 |
|
42 |
-- |
43 |
|\ /| | | ~ ~ |
44 |
| \/ | |---| `|` ? |
45 |
| |ichael | |iggins \^ / |
46 |
michael.higgins[at]evolone[dot]org |