On Sunday 20 September 2015 16:25:34 lee wrote:
> Alan McKinnon <alan.mckin...@gmail.com> writes:
> > On 19/09/2015 21:36, lee wrote:
> >> Hi,
> >> 
> >> how could I solve these updating problems:
> >> 
> >> 
> >> emerge -j 8 -a --update --newuse --deep --with-bdeps=y @world
> >> 
> >>  * IMPORTANT: 4 news items need reading for repository 'gentoo'.
> >>  * Use eselect news read to view new items.
> >> 
> >> These are the packages that would be merged, in order:
> >> 
> >> Calculating dependencies... done!
> >> 
> >> !!! Multiple package instances within a single package slot have been
> >> pulled !!! into the dependency graph, resulting in a slot conflict:
> >> 
> >> dev-libs/boost:0
> >> 
> >>   (dev-libs/boost-1.56.0-r1:0/1.56.0::gentoo, ebuild scheduled for merge)
> >>   pulled in by>>   
> >>     (no parents that aren't satisfied by other packages in this slot)
> >>   
> >>   (dev-libs/boost-1.55.0-r2:0/1.55.0::gentoo, ebuild scheduled for merge)
> >>   pulled in by>>   
> >>     dev-libs/boost:0/1.55.0= required by
> >>     (dev-libs/librevenge-0.0.2:0/0::gentoo, installed)>>     
> >>                   ^^^^^^^^^^
> >>     
> >>     (and 2 more with the same problem)
> > 
> > I'm not sure why you are getting this one. Portage is only pulling in
> > boost-1.56.0-r1 because it's the latest stable version, but librevenge
> > requires something earlier. Portage should therefore shut up and install
> > the only real solution - keep boost at 1.55.0
> 
> Maybe because it says that there's a slot conflict.  I had another one
> of those, and getting rid of it prevents me from having a pdf reader
> installed.  I haven't had the need to read a pdf since, but sooner or
> later I'll need to be able to.

Can you provide your world file?
should be located at:
/var/lib/portage/world

> > Try these possibilities:
> > 
> > emerge =dev-libs/boost-1.55.0-r2
> 
> Why this particular version; how did you figure that out?  I read from
> the second message that boost doesn't work with itself because
> librevenge is installed.  So I could remove librevenge, but a lot of
> things depend on it, amongst them libreoffice.

Don't forget to add "-1" or "--oneshot" as options when installing 
dependencies manually.

> From there, I don't know what the effects are.  Now libreoffice is still
> 4.4.1.2, and I would expect it being upgraded to 5.x maybe.  So I would
> have to remove boost instead --- IIRC I installed it only to try out
> regex_match() and regex_search() --- but removing boost seems a bit
> unreasonable, considering that it takes a while to build.  And even with
> boost removed, I have no good reason to think that there won't be other
> problems, and it leaves the question what to do when I need boost again:
> I don't even have a pdf reader ...
> 
> So I decided I'd better ask what to do.  It's hard to believe that we
> are seriously expected to remove lots of software which we might not be
> able to install again just to do an update.  All these conflicts give me
> the impression that something in the repo is broken and needs to be
> fixed.

I have no such issues, neither do most people.
Which seems to indicate the issue is not with the repo.
Lets look at the actual contents of your world-file. (see above)

> > emerge -avuND world
> > 
> > or
> > 
> > emerge -j 8 -a --update --newuse --deep --with-bdeps=n @world
> > 
> > or quickpkg boost, then unmerge it and re-run emerge world.
> > Boost is a pain to build so with a quickpkg you can put it back with a
> > minimum of effort
> 
> Maybe next weekend or so, I don't feel like doing it now and don't
> really have the time to.

quickpkg is really quick.
Then, to reinstall from that: emerge -vak1 dev-libs/boost

> >> dev-util/boost-build:0
> >> 
> >>   (dev-util/boost-build-1.55.0:0/0::gentoo, installed) pulled in by
> >>   
> >>     =dev-util/boost-build-1.55* required by
> >>     (dev-libs/boost-1.55.0-r2:0/1.55.0::gentoo, ebuild scheduled for
> >>     merge) ^                     ^^^^^
> >>   
> >>   (dev-util/boost-build-1.56.0:0/0::gentoo, ebuild scheduled for merge)
> >>   pulled in by>>   
> >>     =dev-util/boost-build-1.56* required by
> >>     (dev-libs/boost-1.56.0-r1:0/1.56.0::gentoo, ebuild scheduled for
> >>     merge) ^                     ^^^^^
> > 
> > This is a consequence of boost.
> > Fix the boost issue and this one goes away
> 
> I thought it might.  It's yet another message telling me that boost
> doesn't work with boost.

You seem to want 2 different versions of boost, which are in the same slot.
Which isn't allowed.

> >> media-video/ffmpeg:0
> >> 
> >>   (media-video/ffmpeg-2.6.3:0/54.56.56::gentoo, ebuild scheduled for
> >>   merge) pulled in by>>   
> >>     (no parents that aren't satisfied by other packages in this slot)
> >>   
> >>   (media-video/ffmpeg-2.2.14:0/52.55.55::gentoo, installed) pulled in by
> >>   
> >>     media-video/ffmpeg:0/52.55.55=[vdpau] required by
> >>     (media-libs/mlt-0.9.0:0/0::gentoo, installed)>>     
> >>                       ^^^^^^^^^^^^
> > 
> > Similar to boost. try a similar approach
> 
> I tried 'emerge -j 8 -a --update --newuse --deep --with-bdeps=y ffmpeg'
> to upgrade ffmpeg only because it seemed to be smallest problem.  But
> no, that requires quite a lot of packages and gives me a lengthy list
> which looks like some kind of dependency hell.  So that was a no-go,
> too.
> 
> Sure, I could also remove ffmpeg, but how do I know that I can reinstall
> it after upgrading?

media-libs/mlt...
Lets have a look at your world-file.

> >> !!! The ebuild selected to satisfy "sci-libs/hdf5" has unmet
> >> requirements.
> >> - sci-libs/hdf5-1.8.14-r1::gentoo USE="cxx fortran threads zlib -debug
> >> -examples -fortran2003 -mpi -static-libs -szip">> 
> >>   The following REQUIRED_USE flag constraints are unsatisfied:
> >>     threads? ( !cxx !fortran )
> > 
> > Come on, the problem is as clear as daylight and stated right there in
> > the output:
> > 
> > If you have threads in USE for hdf5, then you cannot have cxx and/or
> > fortran also in USE for hdf5
> > 
> > echo "=sci-libs/hdf5-1.8.14-r1 -cxx -fortran" >>
> > /etc/portage/package.use/package.use
> 
> I gathered that much, but I didn't feel like trying to find out whether
> it's better to disable threads or cxx and fortran because of the other
> problems.  hdf5 was pulled in because of dependencies and not because I
> installed it, so I didn't check its USE flags to begin with.

Keep threads if you want performance.
Then again, what do you want to do with hdf?

> >> I could remove boost (and maybe reinstall it later), but I would like to
> >> keep ffmpeg.  hdf5 apparently goes back to having blender installed,
> >> which I would also like to keep.  And apparently, I would have to remove
> >> libreoffice before I could update.
> > 
> > What does libreoffice have to do with this?
> 
> It depends on librevenge.

world-file?

> >> Why can't we just update like we can with any other distribution but
> >> have to run into dependency problems all the time instead?
> > 
> > You fail to understand how gentoo works. At no time did Gentoo ever
> > guarantee that updates would work like binary distros and the process
> > would be trouble free. Quite the opposite - Gentoo is upfront in telling
> > you that there will always be update issues and you are the person to
> > solve them.
> 
> It never told me that.

True, it's not clearly stated.

> > This is because of how Gentoo works. With a binary distro, there is only
> > one variant of a package. If package A depends on ldap, and cifs, and
> > kerberos and nfs, and you don't want any of those then that is tough
> > shit because you are going to get them. And you are going to get them
> > because the package maintainer said you are going to get them.
> 
> That's one of the things that bothers me with binary distributions.

The more freedom with the package manager, the more conflicts you might 
encounter.

> > Gentoo gives you the choice, and sometimes your choices interfere with
> > other choices you make. Now you get to decide.
> > 
> > Binary distros run into the same problems as above, and the package
> > maintainer has to solve them. When that is done, the package gets pushed
> > out and you don't see what it took. You also don't have any choice.
> > 
> > In Gentoo, YOU have the role that a maintainer has on Fedora, YOU get to
> > find out how to solve the problem and YOU get to implement it. That is
> > the inevitable side-effect of having choice.
> 
> Where and how do the above messages give me choices?  They are telling
> me that boost doesn't work with itself,

It does, just not versions that are too close and would end up overwriting 
each others files.

> that I cannot upgrade ffmpeg and
> that I need to dis- or enable USE flags I've never touched.

There are default USE-flags. 
In your config, in the profile and in the ebuilds.
Conflicts can always occur.

> I can make
> a wild guess that removing boost and ffmpeg /might/ solve the problem,
> and from my experience with the pdf reader, I can only assume that
> chances that I cannot reinstall either after upgrading are pretty good.
> My conclusion is that something in the repos might be broken because if
> it wasn't, I wouldn't have these problems.

I'm thinking world-file..

> So my choices are to try to somehow force an upgrade and be left with a
> non-working system, or to wait until the problems are fixed, or to ask
> for help.

force an upgrade?

> Asking for help turns out that I don't really have a choice because I
> can either try to somehow force an upgrade and take the risk of being
> left with a non-working system (because Gentoo gives me choices: perhaps
> you can see the irony here), or not upgrade at all.

How would you force an upgrade?

> >> What do I do when I need to update /right now/ and find myself being
> >> blocked with cryptic messages like the above that leave me stranded?
> >> Once I used 'emerge --sync', there is no way to turn it back to continue
> >> to be able to install software if needed when the update cannot be
> >> performed.  Updates simply need to work, there's no way around that.
> > 
> > You seem unwilling to do what it takes to run Gentoo properly. I suggest
> > you delete your Gentoo systems and install Fedora instead. Gentoo is
> > obviously not for you.
> 
> That is a really wild assumption you're making, to put it nicely.
> 
> Besides, IMO Fedora is run by stupid fascists who believe they can
> dictate people what to think and take over the world --- which is
> something I don't want to have anything to do with --- and I don't want
> systemd, either, which appears to come along remarkably similar lines.
> You'd have to suggest a better alternative, one that is better than
> Gentoo.

It depends, for someone who wants it all to work magically?
Or for someone who doesn't mind learning?

> Other than that, can't you imagine that there might be room for
> improvement?  Like a way to undo an 'emerge --sync' and messages that
> are more informative, or providing the user with actual choices that
> would solve the problem and let them decide which solution they want
> (think of aptitude, which Debian has)?

There is, several in fact.
One is called "Backups"
The other one is portage snapshots.

> Or would you rather say that Gentoo seems unwilling to do what it takes
> to make it easier to upgrade?  Yeah, I know, developer resources are
> limited, but so are mine.

Mine are even more limited, but I manage to upgrade multiple machines 
regularly (on average once every 2 months the whole lot)

--
Joost

Reply via email to