Table des matières

Introduction

Les archives sous formes .tar. peuvent être de deux types :

1- Un tout-compris, on décompresse et c'est prêt à partir. On peut voir ça avec des applications Java ou PHP (dotclear par exemple). Dans ce cas le fichier est simplement le répertoire tout emballé. Il suffit de le décompresser, éventuellement le paramétrer et le placer dans un endroit où l'utilisateur peut lire (et parfois écrire).

2- Ce sont les sources du programme.

C'est l'ancien système, celui avant le temps des paquets. Il a pour avantage de pouvoir compiler sur de nombreuses plateformes alors qu'un paquet est limité à quelques plateformes (par exemple: Ubuntu et Debian). Les sources ne sont pas utilisables tel quel : un programmeur peut les analyser mais un ordinateur ne sait pas les exécuter. Il faut transformer les sources en un exécutable, c'est la compilation.

Il y plusieurs moyens pour compiler un programme, et ça dépend du programme. Pour les programmes en Java, Ant est souvent utilisé. Pour les programmes en C et C++, il faut Make. Ant et Make ne sont pas des compilateurs, ce sont des programmes qui aident à la compilation.

Par exemple, sous debian/ubuntu, pour les programmes en C/C++, il vous faut le paquet build-essential. Il comprend, entre autres, Make et GCC. GCC étant le compilateur.

Comment faire ? (Cas général (Sources avec configure et makefile))

$ wget -c http://lieu_ou_se_trouve_le_logiciel/packageXY.tar.gz
$ tar xvf packageXY.tar.gz
$ cd packageXY/
$ ./configure --prefix=/usr
$ make

* Pour installer réellement l'application, un make install fait l'affaire. Il faut le faire en root car, par défaut, il place les fichiers dans les répertoires prévus par les développeurs. Or, ceux-ci ne sont généralement accessibles en écriture qu'à root.

# make install

Note: Une fois installé on peut effacer le fichier téléchargé … sauf que certains programmes gardent des traces nécessaires à une désinstallation propre dans ce fichier (enfin, une fois que le programme est installé uniquement). Donc supprimer les sources, c'est se priver d'un (possible) outil aidant à la désinstallation. Sans lui, il faudra supprimer l'application à la main, le plus proprement possible… ce qui finit toujours par déstabiliser le système.

Alternativement vous pouvez utiliser le programme Checkinstall qui construira un paquet pour votre distribution à partir des sources, facilitant ainsi la réinstallation ou l'installation sur d'autres machines. Checkinstall permettra aussi la prise en compte du logiciel installé par votre gestionnaire de paquet, et donc sa désinstallation avec celui-ci.

Checkinstall est disponible sur les dépôts de nombreuses distributions, dont OpenSuse, Debian, Ubuntu, Slackware… Une fois installé, remplacez la commande “make install” par :

# checkinstall

commande à effectuer en root dans le répertoire des sources.

Inclusion dans le menu (freedesktop)

Veuillez noter que de plus en plus de logiciels respectent ces standard, vous n'aurez peut être rien à faire ;-)

le fichier .desktop

La plupart des gestionnaires de bureau (comme Xfce) respectent les standard freedesktop, il est donc très facile de créer un fichier (packageXY.desktop) qui mettra à jour votre menu.

Vous avez besoin d'être root pour cela.

vim /usr/share/applications/packageXY.desktop
[Desktop Entry]
Encoding=UTF-8
Name=nom_du_packageXY
Name[fr]=nom_du_packageXY (francisé au besoin) (optionnel)
Comment=le commentaire en anglais (optionnel)
Comment[fr]=le commentaire en français (optionnel)
Exec=packageXY (le binaire/script pour lancer le package)
Icon=icon_packageXY (sans l'extension (.png), voir plus bas)
Terminal=false
Type=Application
Categories=Application;System; (voir plus bas)
StartupNotify=true

l'icône

Si vous souhaitez associer une icône à l'entrée du menu, il est nécessaire que votre icône soit au format .png (format 48×48) ou au format .svg .
Généralement, vous trouverez une icône dans l'archive des sources elle-même, jetez un oeil dans usr/share/pixmaps par exemple.
Cette icône devra être placée dans :

La catégorie

Ceci vous aidera à choisir la catégorie adéquate du menu pour votre logiciel :
http://standards.freedesktop.org/menu-spec/latest/apa.html