Page 1 sur 1

[dépendances optionelles] comportement étrange de --asdeps

Publié : mar. 10 déc. 2013, 19:34
par falke
Bonsoir,

je ne comprends pas le comportement étrange de pacman par rapport aux dépendances optionelles

En effet une mise à jour récente a transformé le paquet freeglut de dépendance en dépendance optionelle. Et je me retrouve après la maj avec un faux message de dépendance orpheline or, ce n'est pas la réalité (en tout cas dans les faits chez moi)

Code : Tout sélectionner

diff --git a/trunk/PKGBUILD b/trunk/PKGBUILD
index 42293c3..9fcf107 100644
--- a/trunk/PKGBUILD
+++ b/trunk/PKGBUILD
@@ -3,12 +3,14 @@
pkgname=jasper
pkgver=1.900.1
-pkgrel=9
+pkgrel=10
pkgdesc="A software-based implementation of the codec specified in the emerging JPEG-2000 Part-1 standard"
arch=('i686' 'x86_64')
url="http://www.ece.uvic.ca/~mdadams/jasper/"
license=('custom:JasPer2.0')
-depends=('libjpeg' 'freeglut' 'libxmu' 'glu')
+depends=('libjpeg')
+makedepends=('freeglut' 'libxmu' 'glu')
+optdepends=('freeglut: for jiv support' 'glu: for jiv support')
source=(http://www.ece.uvic.ca/~mdadams/${pkgname}/software/${pkgname}-${pkgver}.zip
patch-libjasper-stepsizes-overflow.diff jasper-1.900.1-CVE-2008-3520.patch
jpc_dec.c.patch jasper-1.900.1-CVE-2008-3522.patch)

Ce paquet est une dépendance de jasper qui dépend lui-même de gstreamer0.10-bad-plugins (installé explicitement)

Je cherche donc à l'installer avec l'option --asdeeps histoire que ce soit propre et qu'au passage, en cas de suppression de paquet -Rsn, cette dépendance soit également enlevée automatiquement.

Mais , c'est là le problème : ce paquet ne veut pas s'installer à ma demande explicite en tant que dépendance et conserve sont label de dépendance optionnelle.
Pacman -Qdt me retourne toujours le paquet comme orphelin.

Quelqu'un pourrait-il m'expliquer ce comportement ? J'aimerais quand j'installe une dépendance optionnelle qu'elle soit considérée comme une vraie dépendance pour des raisons d'administration

Merci à tous

Re: [dépendances optionelles] comportement étrange de --asd

Publié : mar. 10 déc. 2013, 20:45
par benjarobin
une mise à jour récente a transformé le paquet freeglut de dépendance en dépendance optionelle.
Il n'y a aucune différence entre les 2, pacman ne connait que 2 états : installé explicitement et installé en tant que dépendance.

Pour changer l'état d'un paquet, il faut utiliser :

Code : Tout sélectionner

pacman -D --asexplicit freeglut
ou bien sur

Code : Tout sélectionner

pacman -D --asdeps freeglut
Sinon pour information si tu utilises makedepends, alors le paquet freeglut sera installé en tant que "dépendance", mais aucun paquet ne nécessite ce paquet. Tu as juste besoin de freeglut pour la compilation. Donc pacman ne te dit aucune bêtise quand tu utilises pacman -Qdt.

Il ne faut surtout pas confondre depends et makedepends

Re: [dépendances optionelles] comportement étrange de --asd

Publié : mar. 10 déc. 2013, 22:29
par falke
pacman -Qdt retourne toujours le paquet comme orphelin.

J'en conclue que pacman retourne toutes les dépendances optionelles installées
comme orphelines. Pas normal ...

Re: [dépendances optionelles] comportement étrange de --asd

Publié : mar. 10 déc. 2013, 22:34
par benjarobin
As tu lu mon message ?
Il n'existe pas l'état dépendance optionnelle... Donc le paquet doit être impérativement être installé explicitement.