[fab] final rough draft

Warren Togami wtogami at redhat.com
Tue Aug 15 17:22:26 UTC 2006


Max Spevack wrote:
> 
> 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?
> 
> A)
> 
> To your specific example, ask and ye shall see some improvement.
> 
> http://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=201967
> 
> To your more general question, there's a couple of things that play a 
> part:
> 
> Part of the dependency requirements come from the manner in which the 
> packages are written, in which (for example) it's far more common for 
> someone to install a large set of inter-related packages than just a 
> single package.  Regardless of that, it's entirely possible (such as in 
> this specific evince example) that some extra work can simplify the 
> dependency requirements.  Bugzilla is always the best way to bring issues 
> like that to the attention of the packagers.  From there, it's just a 
> matter of code and time.
> 

The title of this question "dependency hell" is usually referring to a 
different myth of Fedora that continues to be widely believed in the 
community despite the improvements brought by yum.

His question was specifically about the less complained about minimal 
dependency issue.  While some people are emotional about it, it can be 
improved as you state in the response on a case-by-case basis through 
careful analysis and Bugzilla.

I think it may be important to attack the more general "dependency hell" 
  myth somewhere within these responses?

Warren




More information about the fedora-advisory-board mailing list