[fab] slashdot question: dependencies

Max Spevack mspevack at redhat.com
Wed Aug 9 20:46:47 UTC 2006


Would like to open up a few of these questions for some input from you 
guys.  This is not a replacement for a larger draft of the answers -- this 
is just as I work on some of the other questions, here's a few that I 
can't answer alone.

-----------------------------

7) Dependency hell
(Score:5, Interesting)
by Tet

The introduction of yum has vastly improved the user experience when 
installing software, or updating existing packages. However, it's brought 
with it a new kind of dependency hell. For example, if I want to install a 
PostScript previewer:

     % yum install evince
     [...]
     Installing:
     evince x86_64 0.5.1-3 core 773 k
     Installing for dependencies:
     nautilus x86_64 2.14.1-1.fc5.1 updates-released 3.9 M
     nautilus-cd-burner x86_64 2.14.2-1 updates-released 414 k

That's clearly wrong. I only want to install a PostScript previewer. Doing 
so should not require a filemanager (which I don't need or want), and 
certainly not a CD burner. But these are added as dependencies due to the 
clumsy packaging that seems to be increasingly prevalent in Fedora. 
Perhaps (and I remain unconvinced) there's some aspect of evince that can 
make use of nautilus being present. But if so, I haven't seen it. I could 
well believe that nautilus could make use of evince, but not really the 
other way around. But assume for the sake of argument that it can use 
nautilus. That still isn't a reason to have it depend on it. Dependencies 
should be packages that are required in order for another to run, not 
packages that will merely enable additional functionality. In this case -- 
the prime function of evince is to view documents, which isn't 
significantly enhanced by having a file browser present.

Fedora is still my distribution of choice, but it's becoming increasingly 
hard to use for those of us that prefer to run with a minimal system due 
to the way that the dependencies have been getting out of hand. Are there 
any plans to fix this, or is any work already underway to do so? I 
understand that some consideration has been given to providing "soft 
dependencies" within RPM (like dpkg's suggested dependencies), which would 
help. Is there a timeframe for this? Is anything else being done?

I quite understand the focus on getting the system to be usable for the 
average unskilled user. But the impression I'm getting is that it's being 
done at the expense of letting those of us that know what we're doing do 
what we want. Does Fedora have a position on the type of users it's aiming 
for, or is it still trying to be a general purpose OS?

-------------------




More information about the fedora-advisory-board mailing list