Construisez "tel quel" à partir de l'archive tar source. Si vous choisissez cette route, assurez-vous de configurer le système de construction de Git pour installer tout sous ~/git
ou /opt/git
ou quelque chose comme ça sinon plus tard, vous aurez un excellent PITA supprimant ce que vous avez installé.
Le problème est que la manière conventionnelle Unix d'installer un logiciel en le répartissant sur l'ensemble du système de fichiers est raisonnable, mais uniquement lorsque vous avez une sorte de registre qui "sait" quel fichier appartient à quel paquet et vice-versa, et des systèmes de conditionnement tels que Debian. faites exactement cela. Si vous effectuez une installation "normale" d'un package construit à partir des sources, dans la plupart des cas, vous n'aurez aucun moyen de désinstaller ce logiciel plus tard (à court d'utiliser à la checkinstall
place de make install
, mais c'est vraiment un dernier recours). Inversement, si vous configurez un package source pour tout installer sous un seul répertoire, vous aurez des difficultés mineures à exécuter le logiciel (ses répertoires "binaires" ne seront pas sur votre $PATH
), en échange de le désinstaller plus tard sera une évidence - un seul rm -rf /path/to/that/dir
.
Rétroportez-vous. C'est plus compliqué, mais dans des cas simples, cela pourrait bien fonctionner, alors l'OMI vaut la peine d'essayer.
Fondamentalement, vous allez comme ça (un lien vers le .dsc
fichier est tiré de la page du package dans unstable ):
# apt-get install devscripts
$ mkdir ~/devel && cd $_
$ dget http://ftp.de.debian.org/debian/pool/main/g/git/git_2.1.4-2.1.dsc
$ dpkg-source -x git_2.1.4-2.1.dsc
$ cd git
Vérifiez si toutes les dépendances de génération sont satisfaites en exécutant:
$ dpkg-checkbuilddeps
Et installez tout ce que l'outil dit manque actuellement. Parfois, un package peut faire référence à une version de quelque chose de trop récent pour être disponible dans la distribution vers laquelle vous rétroportez; dans ce cas, il est normal d'essayer de tricher et de corriger la version d'un tel package dans le debian/control
fichier.
Maintenant, corrigez la version des paquets sur le point d'être construits. La meilleure façon d'y parvenir est d'avoir un outil qui fasse ce qu'il faut:
$ dch --bpo
Il ajoutera une entrée au debian/changelog
fichier et ouvrira votre éditeur de texte de choix pour le superviser. Fermez simplement l'éditeur - la version des packages à construire est tirée de l'entrée supérieure de ce fichier.
Essayons maintenant de construire:
$ dpkg-buildpackage -uc -us -b
Si vous êtes chanceux, à ce stade, vous aurez un tas de nouveaux .deb
packages Git brillants ..
, que vous pouvez simplement installer en utilisant dpkg -i <packagename> ...
.
(Exécutez debuild clean
pour vous débarrasser du crud intégré ou supprimez simplement le git
répertoire complètement. Vous pouvez également supprimer tout ce que vous avez installé après l'exécution dpkg-checkbuilddep
.)
Malheureusement, si la construction échoue pour une raison quelconque, il faut certaines connaissances pour tenter de corriger, mais cela est hors de portée de cette discussion.