2010-12-20 3 views
2

Je crée un paquet .deb et je suis arrivé au point où je peux exprimer la plupart de mes dépendances. malheureusement, il reste des dépendances qui n'ont actuellement pas de paquetage .deb (par exemple wdfs, ou couchdb dont le fichier .deb est trop en retard et l'autre avec une version plus récente n'existe pas encore) mais peut être déterminé lors de l'exécution. Quelle est la meilleure façon d'exprimer cette dépendance de paquet?comment puis-je déclarer une dépendance binaire non .deb sur un paquet .deb?

pos scripts d'installation?

http://www.debian.org/doc/debian-policy/ch-relationships.html

+1

Ce n'est pas vraiment une question de programmation. Vous pouvez demander l'une des listes de diffusion Debian. – cdhowie

Répondre

1

En supposant que les paquets manquants nécessaires ne sont pas en backports ou ailleurs, la meilleure solution est de créer des paquets Debian pour les paquets qui n'existent pas encore.

Le bidouille, est comme prévu, pour tester les paquets dans la section de configuration du fichier postinst, par exemple si votre postinst est #!/bin/bash:

REQUIREDPACKAGE='python' 
REQUIREDVERSION='Python 2.6.6' 
if [ -z "$(which $REQUIREDPACKAGE)" -o "$($REQUIREDPACKAGE --version 2>&1)" != "$REQUIREDVERSION" ]; then 
    echo "$REQUIREDPACKAGE @$REQUIREDVERSION is required" 
    exit 99; 
fi 

Si vous utilisez la bidouille, vous devez ajouter tous les paquets non-debian requis dans le fichier README et éventuellement un fichier INSTALL avec les instructions d'installation.

2

La solution appropriée consiste à créer des packages .deb pour les composants manquants, peut-être simplement dans un référentiel privé. Il y a aussi equivs qui vous permet de construire des paquets factices, par ex. pour satisfaire des dépendances problématiques, c'est-à-dire fondamentalement "je sais ce que je fais, je suppose que ce paquet est correctement installé". Pour les travaux ponctuels, vous pouvez également appeler dpkg avec --force-depends pour obtenir le même résultat.

Questions connexes