On 03/09/2015 21:11, the...@sys-concept.com wrote:
> Thank you for your helping hand. Yes, did perform the surgery (removing the
> packages you suggested) and run: emerge --depclean -p analyzed every package
> it wants to remove and put it back in world.
I see you are getting the hang of it but I still see some oddities in
your reply. There's a few things to keep in mind about Gentoo, that are
worth repeating. Eventually, I does all imprint in your brain :-)
Every old-timer here has gone through this learning process - even the
old farts like me (and James...) - and it took us many years to figure
out as a community how to deal with world.
Cleanups: Sometimes when cleaning up you'll delete something you really
do need, and you forget why you put it in world. Maybe emerge world puts
it back, but more likely stuff just breaks. Keep a list of all removals
so if you find breakage you can add things back. The classic case is
libs you need for your own code - you probably don't have an ebuild for
that and therefore no deps for portage to use.
Virtuals: you don't add the virtual to world. A virtual is a collection
of packages that all do the same thing and you can pick which one you
want. So you add oracle-jdk-bin to world, and the ebuild depends on
virtual/jdk. oracle-jdk-bin satisfied the virtual, so all is good. If
you unmerge oracle-jdk-bin and use icedtea instead, everything still
works. If you add a virtual to world, portage tends to just pick the
first one in the list which might not be what you want. Rather be explicit.
Sets: You have a many-purpose machine so you might find sets useful,
mostly because you can't add comments to world. You can with sets. They
are just files in /etc/portage/sets/ that list packages. You add them to
the system with emerge @<set_name>. Here is one of mine:
$ cat /etc/portage/sets/alan-kde
and install using emerge -av@alan-kde
portage expands the name to the contents of the file and merges them.
You edit set files by hand so you can comment them. Perhaps you could
create a set for each major thing you do with that computer and make a
set for each one. This way you can easily keep track of major packages
types and comment *why* you did it.
jpeg: if it works the best is to remove all jpeg packages from world and
let portage deal with it. None of my gentoo machines have a jpeg package
in world. But you have nxclient which needs an old jpeg. We you can get
away with automagic, we'll have to see what happens when you do a full
soxr: I'm not sure why this is giving a problem. If ffmpeg needs it, it
should be pulled in directly
jpeg on boot: Depends when the error happens, if you use openrc and it
happens during runlevel start, you can read /var/log/rc.log. Before that
point there's dmesg. We'd need to have more detail to answer better.
USE: There's no such thing as a correct USE :-) It's all just user
choices. So if it does what you want, it's all good. The only thing you
should not do is start USE with -*. A few people here do that and swear
by it, but it comes with a massive maintenance load on you, and vast
potential for side effects as you remove things you may need, and you
don't know you need them. That's why we have profiles, to set up a
minimally correct USE
> Here are the results
>> Comments inline, edit the world file directly:
>> remove everything in dev-libs
>> Remove. No such package, unless its from an overlay
> DBD-Pg is needed by SQL-ledger application I run
> dev-perl/GStreamer is gone
>> Remove. It's a dep of many things
> above gone
>> Remove all this py* stuff. They are deps
>> Remove, this is a common dep
> above gone
> equery d media-libs/libid3tag
> * These packages depend on media-libs/libid3tag:
> media-sound/audacity-2.0.2 (id3tag ? media-libs/libid3tag)
> media-sound/sox-14.4.2 (id3tag ? media-libs/libid3tag)
> equery d media-libs/libmodplug
> * These packages depend on media-libs/libmodplug:
> media-libs/sdl-mixer-1.2.12-r4 (modplug ?
> media-libs/xine-lib-1.2.6-r1 (modplug ? >=media-libs/libmodplug-0.8.8.1)
> media-sound/cmus-2.5.0-r1 (modplug ? >=media-libs/libmodplug-0.7)
> media-video/ffmpeg-2.6.3 (modplug ?
> media-video/vlc-2.1.5-r1 (modplug ? >=media-libs/libmodplug-0.8.8.1:0)
>> Remove everything from media-libs
> all media-libs gone
>> why are you running asterisk on a machine that is obviously a
> Yes, I do. It might not be the correct way of doing things but I find it
> practical to run server and workstation as one machine.
> Easy to manage and only one computer working (running 7/24).
> The way I manage it, I have several computers configures similarly (older
> ones) as backup. I upgrade older one first, if most of the major programs I
> run are still running without problems I upgrade main server. If something
> goes wrong, it is easier (less downtime) to just boot older machine point IP
> to it in firewall and I'm back and running.
> Sometimes troubleshoot something takes time.
> The problem could be harder as well (power supply, fan on CPU etc); so
> running server/workstation combo (as one machine) is easier. If something
> goes wrong, I just boot older machine point IP address in firewall to older
> machine and I'm back in business in 10min.
>> You can probably remove foomatic, it's a dep on cups-filters
> above gone
>> Wee bit behind on kernel versions...
> Yes, I'm a bit behind. Sometimes upgrading to the latest/newest kernel tent
> to break something.
> My idea is "if it ain't broke don't fix it" :-/
>> Remove, no such package. Whatever it was, portage now does it internally
>> Remove both virtuals, replace with the actual ghostscript and jdk
>> implementations you actually use
> emerge -avq jdk
> put back "virtual/jdk" to world
>> XDM? Really?
> OK, gone
>> Remove. The server is a dep for just about everything GUI-related
>> Remove all xf86 drivers. They are controlled by INPUT_DEVICES and
>> VIDEO_CARDS in make.conf
>> All these libs should be deps of something else. Maybe not motif.
>> Note every line you removed from world, then do a full world update then
>> depclean. Carefully note everything that portage wants to unmerge and
>> find out why, if they are true deps and you need them then portage will
>> not remove them. If it's something you truly need then add it back to
>> world (this should be rare, or not happen at all)
>> I can see the mistake you are making, you've been doing this over time:
>> emerge -av <some_lib>
> Yes, that could be the case over so many years.
>> and then it goes in world and never comes out = clutter. What you should
>> do is set USE as you want it, then emerge only the actual apps you
>> interact with. Portage will add and remove libs and other deps as
>> necessary, preventing conflicts.
> In my USE I have:
> USE="gnome -qt4 -hal -arts -berkdb X qtk -qt3 -kde dvd alsa cdr cups apache2
> ssl foomaticdb ppds mysql -acl \
> java tiff jpeg png usb udev scanner gimp gimpprint cgi fam nptl truetype
> kpathsea type1 opengl tetex spell consolekit dbus pam policykit -systemd
> Is anything above irrelevant?
>> The world file is something you need to diligently clean up every few
>> months or so, it's easy to add stuff you shouldn't.
> Thank you for recommendation, I've never done some much cleaning as I did
> today. In addition I didn't know that "world" needs cleaning and what to
> remove from it.
>> One thought kept coming back to me - I think you should determine
>> exactly what the purpose of that host is and rip out ancient junk. Like
>> asterisk - why is it there together with vlc? Think hard about these things.
> As I use server/desktop as one machine that is why I have them install it on
> one machine.
>> Back to jpeg. One of your first recent posts was about the conflict
>> between jpeg and jpeg-turbo. You had nxclient requiring jpeg and
>> something else requiring jpeg-turbo. These conflict and cannot co-exist.
>> You are going to have to give up one of those apps, or run them on
>> separate hosts. No way past this.
> I removed jpeg-turbo.
> When I boot the computer I see some complain message about "jpeg" but it
> scroll too fast, couldn't read it.
> Is there a way to pause the boot process?
> Somehow "media-libs/soxr" doesn't want to go away from world, it is needed by:
> equery d media-libs/soxr
> * These packages depend on media-libs/soxr:
> Thank you for all your help. I tried to follow up and clean these application
> from "world"
> Here is my trimmed "world" file.