# Haarsträubende Abhängigkeitsbäume; was tun?

## TheSmallOne

Also gestern wollte ich mal wieder mein System auf den aktuellen Stand bringen, und dabei ist mir dann wieder was untergekommen, was ich irgendwie reichlich merkwürdig finde:

```
[ebuild     U ] gnome-extra/gnome-games-2.18.2.1 [2.16.3] USE="opengl%* -artworkextra -debug -guile" 7,392 kB 

[ebuild  N    ]  dev-python/gnome-python-desktop-2.18.0  USE="X -debug -doc" 423 kB 

[ebuild  N    ]   gnome-extra/gnome-media-2.18.0  USE="ipv6 -debug -mad -ogg -vorbis" 2,938 kB 

[ebuild  N    ]    gnome-extra/nautilus-cd-burner-2.18.2  USE="-cdr -debug -dvdr" 724 kB 

[ebuild  N    ]     gnome-base/gnome-mount-0.6  USE="gnome -debug" 456 kB 

[nomerge      ] dev-python/gnome-python-desktop-2.18.0  USE="X -debug -doc" 

[nomerge      ]  gnome-extra/nautilus-cd-burner-2.18.2  USE="-cdr -debug -dvdr" 

[nomerge      ]   sys-apps/hal-0.5.9-r1  USE="acpi -crypt -debug -dell -disk-partition -doc -pcmcia (-selinux)" 

[ebuild  N    ]    app-misc/hal-info-20070425  106 kB 

[ebuild  N    ]     sys-apps/hal-0.5.9-r1  USE="acpi -crypt -debug -dell -disk-partition -doc -pcmcia (-selinux)" 1,551 kB 

[nomerge      ] gnome-base/gnome-mount-0.6  USE="gnome -debug" 

[nomerge      ]  sys-apps/hal-0.5.9-r1  USE="acpi -crypt -debug -dell -disk-partition -doc -pcmcia (-selinux)" 

[ebuild  N    ]   sys-apps/dmidecode-2.9  48 kB 

[nomerge      ] dev-python/gnome-python-desktop-2.18.0  USE="X -debug -doc" 

[ebuild  N    ]  dev-python/gnome-python-2.18.2  USE="-debug -doc" 407 kB 

[ebuild  N    ]   dev-python/pyorbit-2.14.3  USE="-debug" 278 kB 

[ebuild  N    ]  media-video/totem-2.18.2  USE="gnome nsplugin theora -a52 -debug -dvd -ffmpeg -flac -hal -lirc -mad -mpeg -nvtv -ogg -seamonkey -vorbis -xulrunner -xv" 2,029 kB 

[ebuild  N    ]   media-plugins/gst-plugins-theora-0.10.11  1,377 kB 

[ebuild  N    ]   media-plugins/gst-plugins-gnomevfs-0.10.11  0 kB 

[ebuild  N    ]   media-plugins/gst-plugins-ogg-0.10.11  0 kB 

[ebuild  N    ]   media-plugins/gst-plugins-pango-0.10.11  0 kB 

[nomerge      ] gnome-extra/gnome-games-2.18.2.1 [2.16.3] USE="opengl%* -artworkextra -debug -guile" 

[ebuild  N    ]  dev-python/pygtkglext-1.1.0  341 kB 

[ebuild  N    ]   x11-libs/gtkglext-1.2.0  USE="-debug -doc" 688 kB 

```

Da will mir Portage also 16 neue Pakete installieren und das wegen was? Wegen gnome-games?

Und was für Pakete: Totem... es soll zwar Spiele geben, die einen Medienplayer benötigen, aber die gnome-games gehören sicherlich nicht dazu.

CD-burner? Ich habe nichteinmal ein optisches Laufwerk in dem PC, geschweige denn einen Brenner.

Wie kann es eigentlich sein, dass solche haarsträubenden Abhängikeiten entstehen? Und was kann man dagegen tun um zu verhindern, dass die Festplatte immer mehr zugemüllt wird? Also außer das verursachende Paket (hier wohl gnome-games) zu maskieren und eben nicht upzudaten?

Aber die package.mask Datei immer länger und länger werden zu lassen kann doch auch keine dauerhafte Lösung sein.

----------

## Genone

Naja, die neue gnome-games Version benötigt offensichtlich gnome-python-desktop. Und abgesehen von den letzten beiden Zeilen (die für Spiele durchaus verständlich sind) sind alles andere Abhängigkeiten von gnome-python-desktop.

Das "Warum?" kann ich dir nicht beantworten da ich von Gnome nicht wirklich Ahnung habe, aber vemutlich liegts daran das gnome-python-desktop halt eine recht breit gestreute Funktionalität hat. Ist halt wieder mal das "Problem" das ein Paket Funktionalität bereitstellt (und dafür Abhängigkeiten benötigt), die man selber nicht benutzt. Man kanns halt nicht immer jedem rechtmachen.Last edited by Genone on Mon Aug 27, 2007 11:23 am; edited 1 time in total

----------

## Dirk_G

Es zwingt dich doch keiner Gnome zu verwenden? Installiere doch alle Pakete von Hand und lass das Meta Package Gnome weg! Eine alternative ohne die Spiele wäre gnome-light.

----------

## TheSmallOne

 *Genone wrote:*   

> Das "Warum?" kann ich dir nicht beantworten da ich von Gnome nicht wirklich Ahnung habe, aber vemutlich liegts daran das gnome-python-desktop halt eine recht breit gestreute Funktionalität hat. Ist halt wieder mal das "Problem" das ein Paket Funktionalität bereitstellt (und dafür Abhängigkeiten benötigt), die man selber nicht benutzt.

 

Aber wurden nicht genau deshalb USE-Flags erfunden? Um zu verhindern, das irgendwelche nicht wirklich benötigten Abhängigkeiten trotzdem mitinstalliert werden?

Ich kann mir nicht wirklich vorstellen, das z.B. ein Programm zum CD-Brennen eine absolut notwendige Abhängigkeit darstellt. Wenn doch, dann haben die Programmierer da irgendwie ganz schön schlecht gearbeitet, da man ja wohl kaum davon ausgehen kann, das jeder einen Brenner besitzt.

Mir scheint es aber eher so, als haben die für das Paket zuständigen Leute versäumt entsprechende USE-Flags zu verwenden und stattdessen einfach alles als feste Abhängigkeiten miteingebaut.

 *Dirk_G wrote:*   

> Es zwingt dich doch keiner Gnome zu verwenden? Installiere doch alle Pakete von Hand und lass das Meta Package Gnome weg! Eine alternative ohne die Spiele wäre gnome-light.

 Ich verwende ja bereits gnome-light, weil mir das andere Paket schon viel zu viele Abhängigkeiten hatte. Die gnome-games habe ich halt extra installiert um mir gelegentlich die Zeit zu vertreiben. Gerade deshalb finde ich ja, dass so ein Paket wie gnome-games nicht derartige Abhängigkeitsbäume hinter sich herziehen sollte.

Davon abgesheen ist das jetzt auch nur ein Beispiel, was mir gerade aktuell aufgefallen ist. Ich hatte auch schon andere Pakete, mit ähnlichen Resultaten, die nichts mit gnome oder so zu tun hatten.

----------

## Finswimmer

Erstell doch bei gnome.org einen Bugreport. Evtl eklären sie dir dann, warum es nicht anders geht, oder es wird eine neue Use Flag eingeführt.

Für dich kannst du doch mal das Ebuild in ein Overlay kopieren, und alle Abhänigkeiten löschen, wenn es dann geht, dann hast du denn Beweis, dass die Devs da nicht sauber gearbeitet haben.

Tobi

----------

## firefly

Man kann gnome-python-desktop auch ohne nautils, totem und co installieren.

Aber das problem ist, das daß configure-script von gnome-python-desktop nicht die möglichkeit bietet gezielt bestimmte features zu deaktivieren.

----------

## Genone

 *TheSmallOne wrote:*   

>  *Genone wrote:*   Das "Warum?" kann ich dir nicht beantworten da ich von Gnome nicht wirklich Ahnung habe, aber vemutlich liegts daran das gnome-python-desktop halt eine recht breit gestreute Funktionalität hat. Ist halt wieder mal das "Problem" das ein Paket Funktionalität bereitstellt (und dafür Abhängigkeiten benötigt), die man selber nicht benutzt. 
> 
> Aber wurden nicht genau deshalb USE-Flags erfunden? Um zu verhindern, das irgendwelche nicht wirklich benötigten Abhängigkeiten trotzdem mitinstalliert werden?

 

Prinzipiell ja, aber im allgemeinen nur wenn das Paket das auch von sich aus anbietet, was bei gnome-python-desktop offenbar nicht der Fall ist. Natürlich könnte der Ebuild Maintainer das auch selber machen, aber das ist ein nicht unerheblicher Arbeitsaufwand rauszufinden was genau wofür benötigt wird und das dann entsprechend zusammenzustricken.

 *Quote:*   

> Ich kann mir nicht wirklich vorstellen, das z.B. ein Programm zum CD-Brennen eine absolut notwendige Abhängigkeit darstellt. Wenn doch, dann haben die Programmierer da irgendwie ganz schön schlecht gearbeitet, da man ja wohl kaum davon ausgehen kann, das jeder einen Brenner besitzt.

 

Wenn gnome-python-desktop eine Komponente hat die auf nautilus-cd-burner aufsetzt ist das halt eine Abhängigkeit. Ob die für dich Sinn macht ist da egal. Wenn man die Abhängigkeit weglassen würde und die Komponente dann nicht funktionert macht dir das vielleicht nichts aus, aber dafür meckert wer anders rum (zu recht).

 *Quote:*   

> Davon abgesheen ist das jetzt auch nur ein Beispiel, was mir gerade aktuell aufgefallen ist. Ich hatte auch schon andere Pakete, mit ähnlichen Resultaten, die nichts mit gnome oder so zu tun hatten.

 

Software wird halt einfach immer komplexer, und kriegt immer mehr Funktionen die neue Abhängigkeiten mitbringen. Wird allgemein als "Fortschritt" bezeichnet. (Ich bin da auch nicht immer drüber glücklich, aber die Welt dreht sich nunmal weiter)

----------

## musv

Das Problem mit scheinbar nicht benötigten Paketen ist mir auch schon aufgefallen. 

Z.B. steht bei mir in der Liste bei: emerge -puDN world

```
[ebuild  N    ] sys-apps/xinetd-2.3.14  USE="perl tcpd"
```

Useflag "xinetd" ist nicht gesetzt.

```

 equery depends xinetd

[ Searching for packages depending on xinetd... ]

net-fs/samba-3.0.24-r3 (swat? sys-apps/xinetd)

net-ftp/netkit-tftp-0.17-r4 (virtual/inetd)

net-ftp/proftpd-1.3.1_rc2-r3 (xinetd? sys-apps/xinetd)

net-misc/rsync-2.6.9-r3 (xinetd? sys-apps/xinetd)

```

Ok, der Übeltäter ist also netkit-tftp, was auch in der Update-Liste mit drinsteht. Und netkit-tftp wird wiederum von Sara benötigt, was ich zwar mal installiert, aber noch nie genutzt hab. (Ist das jetzt gefährlich, das hier zu erwähnen, wenn man davon ausgehen muß, daß Stasi-2.0 - also Schäuble - mithört?).

Zumindest ging's halt bisher immer ohne xinetd. Jetzt scheint sich das zu ändern. Warum weiß ich nicht. Einrichten und Starten werd ich den Daemon nicht.

----------

## Necoro

Zu gnome-python-desktop: Der Bug ... so wie es scheint muss man es schaffen upstream zu überzeugen

----------

