
|
Transformez
un tar.gz
en RPM personnel avec
checkinstall
|
 |
 |
CheckInstall est un logiciel pour les systèmes d’exploitation type
Unix qui facilite
l’installation et la désinstallation des logiciels compilés à partir
des sources en utilisant le gestionnaire de paquets. Après la compilation du
logiciel, checkinstall peut créer automatiquement un paquet RedHat/Mandriva compatible RPM qui peut être désinstallé
proprement plus tard à partir du gestionnaire de paquets.
Mettons que vous téléchargiez un
logiciel disponible à partir des
sources (tar.gz), après s’être rendu dans le dossier de téléchargement,
après avoir décompressé
l’archive (clic droit de l’explorateur de fichier : extraire ou
décompresser) puis être entré dans le dossier ainsi créé.
pour l'installer, vous
feriez basiquement ceci :
tar -xzf mon_logiciel.tar.gz
cd /chemin/mon_logiciel
./configure --prefix=/usr
make
su
<mot de passe de
root>
make
install
|
Et hop ! le logiciel
est installé !
Cette
technique
présente néanmoins 2
problèmes :
- Le premier c'est
que pour désinstaller le logiciel vous devrez passer
par "make uninstall", ce qui suppose que les sources du logiciel soient
toujours disponibles à ce moment précis, ce qui n'est pas forcément
évident lorsque "l'install" c'est effectuée quelques mois avant.
- Le second, c'est
que vous altérez potentiellement votre base rpm en installant des
logiciels non référencé dans votre base rpm.
Checkinstall, permet de
résoudre ces 2 problèmes, pour désinstaller un
logiciel se sera comme avec n'importe quel paquet de votre distribution
:
- avec la console
en tapant URPME (le
nom du paquet).
- avec le RPMdrake du Centre de Control
Mandriva.
En
créant un .rpm, checkinstall met à jour votre base de
données rpm, donc le logiciel nouvellement installé est connu
du gestionnaire de paquetages. L'avantage consiste dans le fait
que vous ne contournez pas le gestionnaire RPM en compilant à partir
des sources.
mise à jour manuelle des packages RPM : 
Recherche de logiciels :
Installation
CheckInstall fait déjà parti,
depuis longtemps, de l'ensemble des logiciels proposés par les
distributions majeures et peut être installé avec le gestionnaire de
paquet du système. Si ça n'est pas le cas, vous pouvez télécharger un
fichier « tar-balls » ou un paquet pré-compilé convenant à diverses
distributions, disponible sur le site web du projet.
Note :
checkinstall-1.6.2.16-1mdv2010.1
RPM for i586 disponible sur
rpmfind.net
libcheckinstall
est nécessaire et disponible sur rpmfind.net)
Installation
à partir du site Web du projet CheckInstall :
Rendez vous sur la page
de téléchargement de checkinstall

Pour les utilisateurs de Mandriva.
vous devez télécharger la version rpm...

et l'installer en cliquant sur le bouton "Installer"
Installation
à partir du CCM (Centre de Control Mandriva) :
Ouvrir le centre de control puis choisir "Installer et désinstaller des
logiciels"

taper "checkinstall"
dans la zone de saisie !

Cochez la case puis cliquez sur le bouton "Appliquer"
RPM-Build
doit être installé
Pour pouvoir construire des RPM, vous devez avoir installé au préalable
le paquetage rpm-build.
(case cochée)

Créer
les répertoires requis
Téléchargez un script "RPMSetup" à executer qui va créer les
répertoires nécessaires à la construction de paquets
Cliquez sur "Enregistrer
le fichier" puis sur le bouton "Ok"

Le fichier "Rpmsetup"
s'enregistre dans le répertoire "Téléchargements",
fenêtre que vous pouvez fermer !

Se déplacer dans le répertoire "Téléchargements"

Sur le fichier "Rpmsetup"
faire un clique-droit de la souris, puis dans le menu contextuel,
sélectionner "Propriété"

Rendre "Rpmsetup"
exécutable, en sélectionnant l'onglet "Droits d'accès",
puis en cochant la case "est exécutable"

Lancer le programme exécutable "Rpmsetup" :
soit faire un double-clique
sur l'icône
ou
soit faire un clique droit sur
l'icône, puis sélectionner "Ouvrir"

Rpmsetup a créé les répertoires et
les fichiers qui vont bien dans votre répertoire personnel


Voilà maintenant vous êtes prêt pour construire des RPM personnels !
Qu'est-ce qui s'est passé avec RPMSetup
Pour comprendre ce que le script a exécuté, se déplacer dans le
répertoire "Téléchargements",
puis faire un clique-droit sur l'icône Rpmsetup,
puis sélectionner "Ouvrir avec"
puis "KWrite".

L'éditeur de texte KWrite
ouvre Rpmsetup

Ces lignes d'instruction permettent la création de répertoire et ses
sous-répertoires, ainsi que les fichiers cachés ! On peut maintenant
sortir de KWrite (Fichier puis Quitter).
Nous allons ouvrir l'explorateur de fichier "Dolphin" en
faisant un clique-droit de la souris sur le Bureau,
puis sélectionner "Ouvrir avec Dolphin"

Pour que ça soit plus visuel, nous allons ouvrir une fenêtre
supplémentaire.
Cliquez sur "affichage"
et sélectionner "Scinder".
ou
appuyer sur la touche de fonction "F3"

Sur la nouvelle fenêtre cliquez sur le répertoire "rpm",
évidemment les sous répertoires sont bien créés.

pour ré-afficher une seule fenêtre dans votre explorateur de fichiers,
appuyer sur la touche "F3".
A
quoi sert cet arborescence ?
À
noter !
- ~/rpm/BUILD :
dossier où se fait la compilation des sources.
- ~/rpm/RPMS :
contient les répertoires, un par architecture, qui contiendront les
paquetages binaires générés.
- ~/rpm/RPMS/i586 :
le répertoire où seront stockés les paquetages binaires créés pour les
processeurs i586.
- ~/rpm/RPMS/x86_64 :
le répertoire où seront stockés les paquetages binaires créés pour les
processeurs X86_64.
- ~/rpm/RPMS/noarch :
le répertoire où seront stockés les paquetages binaires noarch
(c'est-à-dire indépendants de l'architecture du processeur). générés. NdT :
c'est souvent le cas des applications écrites dans des langages
interprétés (php,perl,python,ruby...).
- ~/rpm/SOURCES :
contient les fichiers sources (par exemple monpaquetage.tar.bz2 ).
- ~/rpm/SPECS:
contient les fameux fichiers spec
que nous devons écrire.
- ~/rpm/SRPMS :
RPM sources après la construction.
- ~/rpm/tmp :
dossier temporaire de travail pour RPM.
|
Rpmsetup
a créé
les fichiers .rpmmacros et .rpmrc
Pour pouvoir construire des paquetages pour Mandriva
Linux, Rpmsetup a créer le fichier de configuration .rpmmacros
dans votre répertoire personnel.
Le nom de ce fichier commence par un "."
point. Tous les fichiers commençant par un point, sont des fichiers
cachés. Ils sont donc invisibles dans votre répertoire personnel.
Pour pouvoir les voirs et accéder à ces fichiers, cliquez sur le menu "Affichage"
et selectionnez "Afficher
les fichiers cachés"

nous allons vérifier ceci en faisant défiler les répertoires et
fichiers en utilisant l'ascensseur...

....jusqu'aux fichiers
.rpmmacros et
.rpmrc. Nous
allons voir le contenu de ce fichier .rpmmacros.
Faire un clique droit, puis sélectionner "Ouvrir avec"
et "KWrite".

Rpmsetup
et a créé le
contenu ci-dessous :

Vous pouvez, si vous le souhaitez, modifier le nom "John Doe" par le votre ainsi que l'adresse courriel.
Recommencer la même procédure avec le fichier .rpmrc.

Le RPM se trouve dans ~/rpm/RPMS/$ARCH/
il n'y a plus qu'à l'installer avec le gestionnaire de paquetages
drakrpm, ou urpmi, ou rpm
Résumé
de l'utilisation de checkinstall :
L'installation de CheckInstall est très simple et se déroule en
peu d'étapes pour une installation réussie. Après l'instruction
incontournable make, vous tapez checkinstall,
qui génère un paquet binaire approprié venant du programme compilé.
Alors vous pouvez installer ce paquet avec votre gestionnaire de
paquetage
et il est aussi possible de désinstaller ce paquet proprement.
Désormais pour
installer un logiciel à partir des sources, il suffira de taper :
tar -xzvf
mon_logiciel.tar.gz
cd /chemin/mon_logiciel
./configure
--prefix=/usr
make
su
<mot de passe de
root>
checkinstall
Please choose the packaging method you want to use. Slackware [S], RPM [R] or Debian [D]? R
************************************* *** RPM package creation selected *** *************************************
[...]
|
Conclusion :
CheckInstall
est un outil
remarquable qui facilite grandement l'administration d'un système
Linux. Particulièrement si des programmes doivent être fréquemment
compilés depuis leurs sources, CheckInstall vous donne la
possibilité de les enlever proprement sans risque de rendre le système
incohérent.
Par
ailleurs, vous pouvez aussi installer ces paquets sur
d'autres machines sans avoir à re-compiler le programme à chaque fois,
évidemment en prenant en considération de possibles dépendances de
paquet. Cependant, ceci n'est pas un gros problème pour les machines
identiques.
Eh voilà ! 
|