Schleimer, Ben schreef:
> Hi again, I figured out that artsd was crashing because I was trying 
> to play a .ogg without having emerged kdemultimedia with the vorbis 
> USE flag set.

Well, that makes sense. Congratulations!

> 
> I added the USE flag, reemerged kdemultimedia (which wasn't 
> autoemerge when I did emerge -ND world??)

If kdemultimedia wasn't emerged by itself, but rather as a direct
dependency-- of amarok, for example-- you would need -u (--update) to
catch it. Emerge world itself handles items directly in the world file
(in this example amarok) and --deep handles deep dependencies (such as
kcontrols, which is a direct dependency of konqueror, which is a direct
dependency of amarok, which makes kcontrols a deep/indirect dependency
of amarok, since kcontrols is required for one of amarok's direct
dependencies to run). --update catches the direct dependencies of the
program in your world file, and in fact it's not too wise to update
--deep without -u as well, since that kinda reinforces the very crown of
the pyramid (the packages directly in your world file), and the very
foundation (indirect/deep dependencies of the packages in your world
file), without reinforcing the middle(direct dependencies of the
packages in your world file), which can lead to errors of ommision (a
library gets updated without the package that depends on that library
being updated, and so the package that depends on the library crashes
the application that depends on the package that depends on the library,
because only the new version of the "middle package" works with the
updated library, when the version that you have installed and did not
update does not). In terms of problems potentially caused by doing an
emerge -D world without -u, you got off fairly easy.

<snip>

> HOnestly though, is there some kind of standard set of flags one 
> should have enabled?

Well, there are the default USE flags, of course, but..."should have"?
Under Gentoo? "Um, no," she said mildly, stifling snickers, since that
would be unkind. The entire design of Gentoo revolves around choice.
Your choice. Under Gentoo, your system is quite definitively yours, your
creation, your responsibility. Which is, imo, as it should be-- only you
know what your system needs to run the way you want it to. But you do
have to know what you want your system to do, and you have to pay
attention to the infrastructure (USE flags and the like) to see if the
current setup is going to follow your useage pattern, and change it if not.

If I don't have any *.ogg files on my system, I don't need or care about
the +vorbis or +ogg files being set. But you do, and it's up to you to
know that and to use the available tools (like emerge --verbose) to see
what packages use these flags and make sure that they are set before
emerging those packages. Cost of doing business, as they say.

> 
> Also, maybe there could be a standard way of telling the user that 
> the feature is disabled because of a USE flag instead of just 
> crashing.

Cute idea, but really, how would that work? Since it would have to be
encoded in the program, and that's obviously out of our control. Some
programs do say "I don't have support for this feature", but most of the
time-- especially with multimedia programs, ime-- they just crash. But
then again, only source-based distros allow you to pick and choose your
feature-set before compiling the app; binary distros just choose all
features and enable them, for the most part. Since any given program is
ultimately expected to work under both sets of conditions, I can see how
the designers would not be eager to prioritize their development time to
design in a feature for what is ultimately a minority need (thus-and-so
feature is not enabled), since the majority of 'users' (meaning
distributions repackaging the application for... distribution) are not
going to need this functionality (since all features are by default
enabled), and those who do are expected/hoped to be
experienced enough to know that they need to verify the feature-set
beforehand. The fact that you fall outside both these categories (not
using a binary distribution, yet did not verify your feature set before
compiling) is, sadly, not likely to engender a great deal of sympathy.
We're a hard crew, we Linux users (or maybe it's just me).

But you could well post an enhancement bug somewhere (you could try
b.g.o and see if they'll bump it upstream, or a bug on the individual
application's site if it has one, or with KDE, if the individual
application doesn't have its own bug reporting structure), and see what
the response is. You never know.


> PS. The things you learn after hours and hours of messing with the 
> system... Not sure if it's worth it...

That's your decision and your choice, too. There's SuSE, there's Debian
($DEITY knows, there's good and plenty of Debian), there's Mandriva,
there's Windows.

It's your brainpower, it's your time, it's your computer. Do as you will.

Holly
-- 
gentoo-user@gentoo.org mailing list

Reply via email to