Les documents proposés sur ce site ont été testés et validés par différentes installations mais ne sauraient engager la responsabilité de la société en cas de problèmes ou de pertes de données si les modifications n'ont pas été réalisées par la société elle même.

10-Remplissage du paquet avec un programme

Cette page dépend de la façon et du langage avec lequel vous développez vos programmes. Nous allons utiliser ici une méthode qui vous expliquera comment remplir le paquet, à vous ensuite de l'adapter à votre mode de fonctionnement.

Nous allons utiliser le programme de démonstration elise qui comprend 3 fichiers:

  • Le programme elise lui même, un simple script bash utilisant les commandes de beep (consulter le man pour plus d'informations)
#!/bin/bash

beep -f  659 -l 120  #  Treble E
beep -f  0 -l 120
beep -f  622 -l 120  #  Treble D#
beep -f  0 -l 120

beep -f  659 -l 120  #  Treble E
beep -f  0 -l 120
beep -f  622 -l 120  #  Treble D#
beep -f  0 -l 120
beep -f  659 -l 120  #  Treble E
beep -f  0 -l 120
beep -f  494 -l 120  #  Treble B
beep -f  0 -l 120
beep -f  587 -l 120  #  Treble D
beep -f  0 -l 120
beep -f  523 -l 120  #  Treble C
beep -f  0 -l 120

beep -f  440 -l 120  #  Treble A
beep -f  0 -l 140
beep -f  262 -l 120  #  Middle C
beep -f  0 -l 120
beep -f  330 -l 120  #  Treble E
beep -f  0 -l 120
beep -f  440 -l 120  #  Treble A
beep -f  0 -l 120

beep -f  494 -l 120  #  Treble B
beep -f  0 140
beep -f  330 -l 120  #  Treble E
beep -f  0 -l 120
beep -f  415 -l 120  #  Treble G#
beep -f  0 -l 120
beep -f  494 -l 120  #  Treble B
beep -f  0 -l 120

beep -f  523 -l 120  #  Treble C
beep -f  0 140
beep -f  330 -l 120  #  Treble E
beep -f  0 -l 120
beep -f  659 -l 120  #  Treble E
beep -f  0 -l 120
beep -f  622 -l 120  #  Treble D#
beep -f  0 -l 120

beep -f  659 -l 120  #  Treble E
beep -f  0 -l 120
beep -f  622 -l 120  #  Treble D#
beep -f  0 -l 120
beep -f  659 -l 120  #  Treble E
beep -f  0 -l 120
beep -f  494 -l 120  #  Treble B
beep -f  0 -l 120
beep -f  587 -l 120  #  Treble D
beep -f  0 -l 120
beep -f  523 -l 120  #  Treble C
beep -f  0 -l 120

beep -f  440 -l 120  #  Treble A
beep -f  0 -l 140
beep -f  262 -l 120  #  Middle C
beep -f  0 -l 120
beep -f  330 -l 120  #  Treble E
beep -f  0 -l 120
beep -f  440 -l 120  #  Treble A
beep -f  0 -l 120

beep -f  494 -l 120  #  Treble B
beep -f  0 -l 140
beep -f  330 -l 120  #  Treble E
beep -f  0 -l 120
beep -f  523 -l 120  #  Treble C
beep -f  0 -l 120
beep -f  494 -l 120  #  Treble B
beep -f  0 -l 140
beep -f  440 -l 120  #  Treble A

  • Un fichier qui permettra d'avoir le programme accessible dans les menus, elise.desktop
[Desktop Entry]
Name=Elise
Name[fr]=Elise 
GenericName=Elise
GenericName[fr]=Elise
Comment=Joue la lettre à Elise de Beethoven
Comment[fr]=Joue la lettre à Elise de Beethoven
Icon=/usr/share/pixmaps/elise.png

Type=Application
Categories=AudioVideo;Audio;

Exec=/usr/local/bin/elise
StartupNotify=false
Terminal=false
  • Une icone personalisée pour notre programme

fichiers:

Remplissage du paquet "à la main"

Le paquet va recréer l'architecture (arbre des dossiers) qui doivent être présents sur l'ordinateur lorsque le paquet sera installé.

Par exemple, mon programme elise devra se trouver dans /usr/local/bin et un lanceur pour ce programme doit être présent dans /usr/share/applications/. Par conséquent, à la racine de mon paquet, nous allons recréer cette arborescence, soit graphiquement, soit en ligne de commande.

mkdir -p /home/demo/devel/absolacom/hardy/dev/elise/usr/local/bin
mkdir -p /home/demo/devel/absolacom/hardy/dev/elise/usr/share/applications
mkdir -p /home/demo/devel/absolacom/hardy/dev/elise/usr/share/pixmaps

Il ne reste plus qu'à copier les fichiers du programme à l'endroit prévu (elise dans /home/demo/devel/absolacom/hardy/dev/elise/usr/local/bin, elise.desktop dans /home/demo/devel/absolacom/hardy/dev/elise/usr/share/applications, l'icone dans /home/demo/devel/absolacom/hardy/dev/elise/usr/share/pixmaps ) et compiler le paquet

Méthode automatique

Une autre méthode consiste à utiliser le script predeb contenu dans le dossier debian du paquet (elise.predeb dans notre cas)

Ce script, s'il est présent dans le dossier caché ”.predeb” du répertoire dev 1)est exécuté lors de la compilation du paquet. Ainsi, lorsque je compile un paquet, je suis certain d'y avoir intégré l'ensemble des fichiers avec les dernières modifications.

Ce script est à paramétrer en fonction de vos habitudes de travail et des fichiers à insérer dans le dossier du paquet.

  • Déplacez le fichier debian/elise.predeb dans le dossier /home/demo/devel/absolacom/hardy/dev/.predeb/ 2)
  • Assurez vous de rendre ce script exécutable en lui donnant les droits corrects d'exécution
  • Ouvrez le script elise.predeb et modifiez les valeurs ou les commandes afin de l'adapter à votre travail.

Vous constaterez qu'il est paramétré par défaut pour des fichiers python. En effect, c'est ce type de programmes que nous développons principalement.

la partie que vous avez à modifier est celle ci:

PYTHONDEV=/home/demo/python
ORIG=$PYTHONDEV/$PAQUET

Ainsi, si vous développez et faites vos tests dans le dossier /home/demo/python et que vous y créez des répertoires de test du nom de votre paquet, lors de la compilation du paquet deb, le script predeb va aller chercher les éléments qu'il va trouver dans votre répertoire de tests et les placer aux endroits correspondants 3).

Cela permet de garder un paquet de développement “propre” et de faire des essais et tests dans un dossier destiné à cela. De même, les fichiers temporaires, les images de travail (avec calques), les différents essais restent dans le dossier de développement et seules les images et fichiers “finis” sont copiées dans le paquet.

Une fois le fichier predeb programmé, il ne reste plus qu'à compiler le paquet

1) et exécutable
2) affichez les dossiers cachés dans nautilus avec Ctrl + H
3) A vous de vous assurer quand même que les opérations se passent bien, au moins lors des premières compilations

Outils personnels