LWN.net Logo

Changing backgrounds

Changing backgrounds

Posted Apr 24, 2008 15:54 UTC (Thu) by proski (subscriber, #104)
In reply to: Changing backgrounds by ernstp
Parent article: The Grumpy Editor encounters the Hardy Heron

I don't know how it is in Ubuntu, but in Fedora 9, removing bluetooth support removes nautilus:

yum remove '*bluez*'
...
--> Processing Dependency: libbluetooth.so.2 for package: gvfs
...
--> Processing Dependency: gvfs for package: nautilus
You don't make one of the most basic components depend on libraries for optional hardware. And if you do, don't be surprised that users will remove it.


(Log in to post comments)

Changing backgrounds

Posted Apr 24, 2008 19:26 UTC (Thu) by oak (subscriber, #2786) [Link]

> You don't make one of the most basic components depend on libraries for 
optional hardware.

By most basic components I guess you mean gvfs?

Nautilus is not the only dependency for that (at least not in the future) 
as it replaces gnome-vfs...

Changing backgrounds

Posted Apr 24, 2008 21:49 UTC (Thu) by proski (subscriber, #104) [Link]

"one of the most basic components" referred to nautilus. I should have used quotes.

Hmm... Why?

Posted May 12, 2008 14:25 UTC (Mon) by khim (subscriber, #9252) [Link]

You don't make one of the most basic components depend on libraries for optional hardware.

Interesting. Why it's Ok for optional software (like kerberos) but not Ok for optional hardware (like bluez)? And if you'll say that you should make everything optional removable then the only sane answer is Gentoo...

Ubuntu, Fedora and other popular distributions are NOT Gentoo and are NOT designed to allow mix-and-match use. They are designed to WORK. Out of the box. They are doing it quite well - unless you are trying to change them too much.

Hmm... Why?

Posted May 15, 2008 12:24 UTC (Thu) by Duncan (guest, #6647) [Link]

Interesting you mention Gentoo.  That's in fact what I was going to 
mention as well.  Binary distributions often have compile-time support 
choices that force library dependencies if enabled.  It was apparently 
judged worthwhile to enable bluetooth support for those that had it, even 
at the cost of forcing the library dependency.  The option would be 
disabling bluetooth support even for those that needed it.

This is the kind of choices binary distributions make all the time.  Among 
other things, it's why most binary distributions favor one desktop 
environment (KDE, GNOME, XFCE, whatever) over another, even if they have 
binaries for both.  Inevitably there will be packages with compile-time 
enabled options to better integrate with more than one, and a binary 
distribution will, by working policy borne of necessity, tend to enable 
the support for their "default" desktop while disabling the other, thus 
not forcing the installation of their non-default desktops, while forcing 
the installation of at least major components of their default choice due 
to the build-time linking they enabled.

The only way around this sort of thing for a binary distro is shipping 
multiple choices, either as different distribution flavors, 
ubuntu/kubuntu, etc, or by shipping multiple versions of the same package 
(say vim and vim-minimal, to cite one example I'm familiar with from my 
time a few years ago on Mandrake).  Either way that's a limited 
workaround, because it doesn't deal with the more obscure choices, which 
will tend to be enabled or disabled based on individual distribution 
policy for that sort of dependency and the functionality hit taken when 
disabling it.

While they certainly have their own faults, source-based distributions 
shouldn't have this one, at least not to anywhere near the same extent, 
because being source based, the choice of whether to support the extra 
functionality and take the extra dependencies is made at the user end, at 
compile and install time.  That's what Gentoo's USE flags are all about.

If you're using a binary distribution, you're choosing a package set where 
untold hundreds, more like thousands, of these choices have been already 
made for you.  If you choose one more or less compatible with your usage, 
purposes and preferences, a good share of them will be the same choices 
you would have made anyway and you've saved yourself the hassle of 
compiling everything from source at the cost of, probably, a handful of 
packages that get installed as dependencies that you'd not need had you 
compiled each package with just the support you needed.  Hopefully, you 
find one fairly close to what you want and you have just those few extra 
packages and interdependencies.  But, you WILL get those few.  It comes 
with the territory.  It's a tradeoff you choose to take when you choose a 
binary distribution.  If you don't like it, choose a from source 
distribution that allows you to control such things... at the cost of 
compiling everything yourself.  Your choice.

When it comes to my computer, I'm definitely and admittedly a control 
freak, and I had decent hardware, so I chose the extra control.  Others 
don't mind the loss of functionality and customizability, as long as 
it "just works".  For them, from all I read, GNOME based Ubuntu tends to 
be a pretty good solution, as are (in a different way) various 
proprietaryware solutions, where you pay your money and get a more or less 
turnkey solution they expect you you to take more or less as is and not be 
too interested in poking away at the internals of (indeed, it tends to be 
against the EULA to do so).  If they are lucky, it'll meet their needs and 
wants as well as my Gentoo with KDE has for me, and they'll be as happy 
with the results as I've been. =8^)

Duncan

Copyright © 2008, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds
Powered by Rackspace Managed Hosting.