Miam et packages recommandés / suggérés

Je voudrais installer un logiciel sur mon système Fedora , mais il y a beaucoup de dependencies déraisonnables (dont je sais qu'elles ne sont pas réellement nécessaires).

Je travaillais sur Debian , où apt-get permet d'exclure systématiquement les packages recommandés et suggérés , en n'installant que les dependencies ssortingctement requirejses.

Y a-t-il un moyen de le faire avec Yum ?

Non.

Malheureusement, la gestion des packages basée sur RPM a un seul type de dependencies. C'est une dépendance ou ce n'est pas, pas quelque chose entre les deux ( lire ici ). D'après mon expérience, les dependencies dans Fedora sont assez limitées et les fonctionnalités non essentielles ne sont pas installées sauf si vous effectuez des installations groupées.

Les multiples niveaux de dependencies montrent l'un des pouvoirs de la gestion de packages basée sur DEB, à mon avis.

EDIT: Pour répondre à la question d'origine, oui c'est possible pour les gestionnaires de packages qui supportent actuellement les dependencies faibles. Par exemple, sur Mageia ce serait égal à urpmi --no-suggests foo . Pour SuSe, ce serait zypper in --no-recommends . Quelque chose comme ça doit être implémenté pour les nouvelles versions de yum aussi, sinon ces versions douces seraient assez inutiles.


En fait, il y a des dependencies faibles en RPM qui permettent cela, mais malheureusement celles-ci n'ont pas été ajoutées à yum et la version de rpm.org que Fedora / RHEL utilise depuis récemment (et donc uniquement disponible via rawhide actuellement). Consultez http://lists.rpm.org/pipermail/rpm-maint/2014-February/003666.html pour l'annonce récente et les détails de mise en œuvre. Voir aussi http://lists.baseurl.org/pipermail/yum-devel/2009-September/005844.html pour la discussion précédente. Il y a aussi une page wiki fedora sur les changements dans rpm-4.12 qui décrit ce support: https://fedoraproject.org/wiki/Changes/RPM-4.12

FWIW, les dependencies logicielles sont utilisées depuis plusieurs années par SuSe, voir http://en.opensuse.org/Libzypp/Dependencies#Weak_dependencies et la section ci-dessous montre ce que leur twig rpm supporte. Aussi Mandriva / Mageia et les fourchettes connexes utilisent des dependencies souples (seulement des suggestions) depuis un certain time.

Donc, pour répondre à la question initiale, mettez à jour rawhide / rpm-4.12 et utilisez l'une des dependencies faibles qu'il supporte maintenant.

Si vous avez besoin de plus d'informations sur les détails d'implémentation internes de RPM, je serai heureux de les partager.

Les dependencies dans les dissortingbutions basées sur RPM fonctionnent différemment de la méthode dpkg Requires / Recommends / Suggests.

Généralement, les dependencies dans les dissortingbutions basées sur RPM peuvent être considérées comme équivalentes à «ce package ne fonctionnera pas correctement à less que cette dépendance ne soit satisfaite». Cependant, il existe une certaine liberté artistique pour les mainteneurs de packages à inclure des dependencies supplémentaires comme ils l'entendent (soit parce qu'ils ne sont pas détectés automatiquement, soit parce qu'ils estiment que c'est une exigence difficile).

Par exemple, une application web dans Debian / Ubuntu peut avoir diverses dependencies suggérées sur les packages MySQL Server. Cependant, étant donné que le server MySQL n'est pas obligé d'être sur le server web local, ce n'est pas une condition difficile, le même packageage sous Fedora n'aurait aucune dépendance.

Il y a un problème avec la méthodologie RPM, c'est ce que vous avez identifié, il y a parfois trop de dependencies. Une question courante que j'ai entendue est «Pourquoi ce package devrait-il contenir des bibliothèques pour Bluetooth lorsque je n'utilise pas Bluetooth?», Les éléments tels que les plugins optionnels inclus dans le package principal d'application sont généralement la cause de cette situation.