Fink

Tutoriel d'empaquetage - 1. Préliminaires

1.1 Apprentissage des bases

Note : dans ce document, nous supposons que fink est installé dans /sw - son emplacement par défaut. Quand vous verrez un bloc de code semblable à celui-ci :

finkdev% unecommandequelconque

vous devrez alors saisir unecommandequelconque dans Terminal.app ou dans tout autre terminal sur votre Mac.

Vous devez d'abord assimiler quelques concepts de base sur la création de paquets pour Fink. Nous vous suggérons :

1.2 Création d'un paquet

Sauvegardez le nouveau fichier info (et le fichier rustine si nécessaire) dans le répertoire /sw/fink/dists/local/main/finkinfo/. Le fichier doit avoir pour nom nomdupaquet.info (et la rustine doit s'appeler nomdupaquet.patch), où nomdupaquet est le nom de votre paquet. Si ce répertoire n'existe pas, vous devez le créer.

Note importante : vérifiez que fink est à jour en exécutant la commande :

finkdev% fink selfupdate

Exécutez ensuite :

finkdev% fink configure

pour passer le niveau de verbosité à sa plus grande valeur et activer l'arborescence instable.

Vérifiez alors que fink trouve votre paquet en exécutant :

finkdev% fink list nomdupaquet

S'il n'apparaît pas, vous devez modifier le fichier de configuration de fink, de sorte que l'arborescence locale soit prise en compte.

Vous devrez peut-être réindexer les paquets en exécutant :

finkdev% fink index

Si vous souhaitez de plus amples informations, lisez le Guide de création de paquets ou utilisez l'une ou l'autre des différentes sources d'aide. Vous devez aussi vous abonner à la liste de diffusion fink-devel.

1.3 Validation d'un paquet

Pendant le processus de validation de votre paquet, vous devez régler le niveau de verbosité de fink à la plus haute valeur possible. Voir la section fichier de configuration de fink pour savoir comment le changer.

Vérifiez que votre paquet est valide en exécutant :

finkdev% fink validate /sw/fink/dists/local/main/finkinfo/nomdupaquet.info

Si c'est le cas, essayez de construire le paquet en exécutant :

finkdev% fink -m --build-as-nobody rebuild nomdupaquet

Observez attentivement les messages d'erreur or d'attention du processus de construction. Assurez-vous, en particulier, que tout s'installe dans le répertoire de destination (qui est /sw/src/root-nomdupaquet-%v-%r/sw) à partir duquel fink construit le paquet binaire. Rien ne doit être installé directement dans /sw.

Si vous utilisez l'option --keep-build-dir ou -k de fink, le répertoire de construction sera conservé. C'est là que fink décompresse le fichier source téléchargé et que le paquet est construit. Cela vous aidera à déboguer le processus de construction. Voir man fink pour de plus amples informations.

Vous pouvez aussi utiliser l'option --keep-root-dir ou -K, elle permet de conserver le répertoire de destination. C'est là que fink construit l'arborescence d'installation du paquet. La comparaison entre les répertoires de construction et d'installation peut aider à déboguer la phase d'installation.

Si la construction du paquet se passe bien, vérifiez le contenu du paquet binaire en exécutant :

finkdev% dpkg -c /sw/fink/dists/local/main/binary-darwin-powerpc/nomdupaquet.deb

Vérifiez que tous les fichiers qui sont censés être dans le paquet se trouvent bien dans le fichier .deb. Rappel : assurez-vous que rien n'est installé directement dans /sw.

Vous pouvez maintenant valider le paquet binaire en exécutant :

finkdev% fink validate /sw/fink/dists/local/main/binary-darwin-powerpc/nomdupaquet.deb

Si tout est correct, installez le paquet avec :

finkdev% fink install nomdupaquet

et testez les fonctionnalités de votre paquet.

Si le processus échoue lors d'une des étapes ci-dessus, essayez de corriger les erreurs et recommencez le processus à partir de l'étape fink validate.

1.4 Soumission de votre paquet

Si toutes les étapes de vérification de votre paquet énoncées ci-dessus ont été franchies avec succès, vous pouvez soumettre le fichier info (et le fichier patch s'il existe) au Traqueur de soumissions de paquets.

Une personne se chargera d'examiner votre soumission et d'ajouter le paquet à la branche instable de Fink, si le paquet semble correct. Sinon, on vous demandera de mettre le paquet en accord avec les règles de Fink.

Note très importante :

Suite: 2. Exemple - le paquet Maxwell