View previous topic :: View next topic |
Author |
Message |
grooveman Veteran
Joined: 24 Feb 2003 Posts: 1217
|
Posted: Mon Jan 12, 2004 1:31 pm Post subject: emerge -Up world still wanting to downgrade |
|
|
I did an emerge -Up world today, and this is what I got:
Quote: |
[ebuild U ] app-arch/bzip2-1.0.2-r3 [1.0.2-r2]
[ebuild U ] sys-apps/groff-1.18.1-r4 [1.18.1-r3]
[ebuild UD] net-print/foomatic-filters-3.0.0.20031018 [20031018]
[ebuild U ] dev-libs/libxml2-2.6.3 [2.5.11]
[ebuild UD] net-print/foomatic-db-engine-3.0.0.20031018 [20031018]
[ebuild UD] net-print/foomatic-3.0.0.20031018 [20031018]
[ebuild U ] sys-apps/gawk-3.1.3-r1 [3.1.3]
[ebuild N ] sys-apps/i2c-2.8.1
[ebuild N ] sys-apps/lm-sensors-2.8.1
[ebuild U ] net-misc/rsync-2.6.0 [2.5.7]
[ebuild U ] sys-apps/slocate-2.7-r5 [2.7-r2]
[ebuild N ] sys-kernel/vanilla-sources-2.4.24
[ebuild U ] sys-devel/autoconf-2.58 [2.57-r1]
|
Why does it insist upon downgrading packages? I thought the capital 'U' was supposed to prevent that from happening?
This happened on another machine for me as well. It makes me a little nervous...
Does anyone know a way around downgrading packages -- aside from emerging them all individually?
Thanks
G _________________ To look without without looking within is like looking without without looking at all. |
|
Back to top |
|
|
lazarusrat Guru
Joined: 17 Jul 2002 Posts: 305 Location: Lafayette, IN
|
Posted: Mon Jan 12, 2004 2:04 pm Post subject: |
|
|
It doesn't look like an actual downgrade, but just that they've changed the way they're doing version numbers on those packages. The 20031018 part is the same as what you have installed, they're just tacking on the 3.0.0.
Also, I think if it were going to be a "real" downgrade, it would just list a D and not UD. I think it uses this syntax when it's going to install an older version alongside your current one (e.g. installing gtk+-1.x after gtk+-2.x).
If you're really concerned about it, you could emerge --inject those three packages. _________________ obpiper: pipe menu generator for openbox
obtheme: pipe menu to switch openbox themes |
|
Back to top |
|
|
grooveman Veteran
Joined: 24 Feb 2003 Posts: 1217
|
Posted: Tue Jan 13, 2004 12:52 pm Post subject: |
|
|
yes, I have considered injecting them, but then portage seems to no longer take those packages into account.... Will portage be "smart" enough to update those packages when the next stable release comes out?
It seems to me that injecting sort of "pulls the wool over the eyes" of portage. How do you pull the wool back off?
On my other box, I have 4.3.99 version of X, every time I tried an emerge -U world, it kept downgrading it to 4.3.0 (which does not support my graphics chip). So I injected it... but I am still waiting to see if portage will catch it when a newer version of X is available... say 4.4?
Those are my concerns. It just seems to me that portage should do what it says: -U shouldn't downgrade anything. Am I alone in thinking this?
G _________________ To look without without looking within is like looking without without looking at all. |
|
Back to top |
|
|
ozbird Apprentice
Joined: 21 Oct 2003 Posts: 185
|
Posted: Tue Jan 13, 2004 1:07 pm Post subject: |
|
|
grooveman wrote: | It seems to me that injecting sort of "pulls the wool over the eyes" of portage. How do you pull the wool back off?
|
Correct - it tricks portage into thinking the injected package is installed. To "uninject" the package, you run "emerge unmerge ..." as per any other package. |
|
Back to top |
|
|
lazarusrat Guru
Joined: 17 Jul 2002 Posts: 305 Location: Lafayette, IN
|
Posted: Tue Jan 13, 2004 1:26 pm Post subject: |
|
|
grooveman wrote: | Those are my concerns. It just seems to me that portage should do what it says: -U shouldn't downgrade anything. Am I alone in thinking this? |
No, it doesn't look like you are. And I agree. But it looks like for now --inject is the workaround. I believe it will be smart enough to upgrade again the next time there's a new version, but I don't have access to Gentoo ATM. A fairly simple test would be to inject an intentionally old version of a small package you don't have installed, then see if portage wants to upgrade it. _________________ obpiper: pipe menu generator for openbox
obtheme: pipe menu to switch openbox themes |
|
Back to top |
|
|
grooveman Veteran
Joined: 24 Feb 2003 Posts: 1217
|
Posted: Tue Jan 13, 2004 4:24 pm Post subject: |
|
|
Quote: | Correct - it tricks portage into thinking the injected package is installed. To "uninject" the package, you run "emerge unmerge ..." as per any other package. |
Yes, that is the only way I could find around it... but it seems an awfully heavy-handed solution to uninjecting. It seems Uninjectcing should simply reveal the package that is actually there. There are times when one might simply wish to see what is actually on their system without uninstalling it.
I think I will just have to write a script to dodge the downgrades until a more eloquent solution is available.
G _________________ To look without without looking within is like looking without without looking at all. |
|
Back to top |
|
|
Hypnos Advocate
Joined: 18 Jul 2002 Posts: 2889 Location: Omnipresent
|
Posted: Tue Jan 13, 2004 5:59 pm Post subject: |
|
|
"emerge -Up world" keeps you from downgrading world packages. If you want this enforced all the way down your dependency tree, not just for "leaf nodes," add the "--deep" option.
Of course, this might barf if you generally run stable, but mix in selected unstable packages. _________________ Personal overlay | Simple backup scheme |
|
Back to top |
|
|
Genone Retired Dev
Joined: 14 Mar 2003 Posts: 9538 Location: beyond the rim
|
Posted: Tue Jan 13, 2004 7:55 pm Post subject: |
|
|
/me considers removing the -U option in 2.0.52 as it's no longer necessary in 2.0.50 and people are only complaining about it |
|
Back to top |
|
|
Hypnos Advocate
Joined: 18 Jul 2002 Posts: 2889 Location: Omnipresent
|
Posted: Tue Jan 13, 2004 8:24 pm Post subject: |
|
|
Genone wrote: | /me considers removing the -U option in 2.0.52 as it's no longer necessary in 2.0.50 and people are only complaining about it |
How is that? Is it implied now? _________________ Personal overlay | Simple backup scheme |
|
Back to top |
|
|
Genone Retired Dev
Joined: 14 Mar 2003 Posts: 9538 Location: beyond the rim
|
Posted: Tue Jan 13, 2004 8:43 pm Post subject: |
|
|
2.0.50 has package.keywords, the lack of that feature is IMO the only reason -U was ever implemented. |
|
Back to top |
|
|
Halcy0n Developer
Joined: 17 Sep 2003 Posts: 1682 Location: Freehold, NJ
|
Posted: Tue Jan 13, 2004 8:46 pm Post subject: |
|
|
The only time I've seen -U not work is when a package is added to package.mask so its hardmasked. I've never had any problems with it otherwise. That probably should be the correct behavior for -U in that situation as well, since if something deserves a hardmask, there is obviously something troublesome with running it. _________________ Mark Loeser
http://www.halcy0n.com |
|
Back to top |
|
|
Hypnos Advocate
Joined: 18 Jul 2002 Posts: 2889 Location: Omnipresent
|
Posted: Tue Jan 13, 2004 9:23 pm Post subject: |
|
|
Genone wrote: | 2.0.50 has package.keywords, the lack of that feature is IMO the only reason -U was ever implemented. |
Well, then you have to make entries in package.keywords for each of your world packages that are into softmasked versions -- will this propagate to the deps, which might also be into softmasked versions, or will one have to make entries for them as well?
Of course, one can always do the following
Code: | ACCEPT_KEYWORDS="~x86" emerge -u --deep <list of softmasked world packages> |
where the list has to be manual; but then all the deps will be upgraded.
In any case, I can't argue with the design decision to eschew deps "not downgrading" for "might be downgraded or will be upgraded." _________________ Personal overlay | Simple backup scheme |
|
Back to top |
|
|
grooveman Veteran
Joined: 24 Feb 2003 Posts: 1217
|
Posted: Fri Jan 16, 2004 1:18 am Post subject: |
|
|
Hmm...
Quote: | "emerge -Up world" keeps you from downgrading world packages. If you want this enforced all the way down your dependency tree, not just for "leaf nodes," add the "--deep" option. |
Nope. Still wants to down grade. .
Quote: | /me considers removing the -U option in 2.0.52 as it's no longer necessary in 2.0.50 and people are only complaining about it |
I guess I don't understand why having a fully funtional "-U" optoin would be so hard to implement. I am not a python coder, but it seems that a conditional of some sort could easily say something like:
"If package # < current package # then keep current package number"
Seems a heck of a lot easier than having to keep track of every package you don't want downgraded in package.keywords or by injecting everything it wants to downgrade (especially when one has several gentoo systems to keep updated, I have over a dozen). One of the things I had always dug about portage was its inherent simplicity -- but without the "-U", it gets to be too cumbersome.
G _________________ To look without without looking within is like looking without without looking at all. |
|
Back to top |
|
|
nephros Advocate
Joined: 07 Feb 2003 Posts: 2139 Location: Graz, Austria (Europe - no kangaroos.)
|
Posted: Fri Jan 16, 2004 1:49 am Post subject: |
|
|
Just to add to the confusion: sometimes things like this are indeed intended to happen, like right now with openmotif/lesstif.
At one time, openmotif 2.2 was in portage. For certain reasons, it was removed by the devs and replaced with 2.1. So an emerge -u world would show that package to be downgraded, quite correctly.
The changelog for openmotif did clarify the reason for that: it referres to bug #29388 which explains the change.
Moral of this is: One should try reading up on changelogs and the bugzilla when things like this happen!
[Sorry, this doesn't really relate to the problem at hand which is a perhaps undesireable behaviour of emerge, but it does show that sometimes some more research is indeed in order.] _________________ Please put [SOLVED] in your topic if you are a moron. |
|
Back to top |
|
|
Hypnos Advocate
Joined: 18 Jul 2002 Posts: 2889 Location: Omnipresent
|
Posted: Fri Jan 16, 2004 2:25 am Post subject: |
|
|
grooveman wrote: | Nope. Still wants to down grade. . |
Okay, perhaps I've figured it out (from experimenting on my system):
Say you run a world upgrade under stable (ACCEPT_KEYWORDS="x86"), and package A has an update, which depends on package B. But, if package B was previously installed/updated under unstable (ACCEPT_KEYWORDS="~x86"), this latest version of B is not visible under stable. Then, emerge assumes that this version of B was removed from the Portage tree by the devs, and so to satisfy the requirements for A, it will downgrade B.
"Masking" is truly that.
Quote: | Seems a heck of a lot easier than having to keep track of every package you don't want downgraded in package.keywords or by injecting everything it wants to downgrade (especially when one has several gentoo systems to keep updated, I have over a dozen). One of the things I had always dug about portage was its inherent simplicity -- but without the "-U", it gets to be too cumbersome. |
Well, in light of my newfound insight above, I can understand Genone's argument. If, despite "-U" a package will be downgraded, there's a reason: an unstable dependency for a stable world package (due to a change in the tree or a previous unstable install), or the world package ebuild unnecessarily specifies a certain version for the dependency.
EDIT: The unstable install/deliberate masking ambiguity can be resolved by proper slotting, but it's not tenable/worthwhile for all packages. _________________ Personal overlay | Simple backup scheme |
|
Back to top |
|
|
|