De temps en temps, nous pouvons être amenés à installer quelque chose à partir de la source pour diverses raisons. Bien qu'il soit assez standard d'installer le logiciel en fonction des dépendances appropriées, je ne sais pas comment gérer une telle installation pour plus de commodité.
Plus précisement:
Que pouvons-nous faire pour garantir une désinstallation simple et propre (y compris les dépendances installées juste avant et uniquement pour le logiciel installé à partir de la source)?
Que pouvons-nous faire pour assurer une mise à niveau facile et propre du même logiciel, qui sera probablement réinstallé à partir de la source?
Que pouvons-nous faire pour minimiser les conflits potentiels s'il existe un package par défaut (installé à l'aide d'apt-get) ainsi que la version (plus récente) du package (installée à partir de la source)?
apt-get src
ne peut probablement pas aider dans de tels cas.Tout d'abord, tout dépend de la façon dont vous gérez vos codes sources. Je
~/sources
crée un répertoire comme et je mets chaque programme dans ses sous-répertoires, tandis que d'autres créent un nouveau répertoire pour chaque programme.De même, certains comme moi, créent un nouveau sous-sous-répertoire pour chaque nouvelle version et ne suppriment les anciennes versions que lorsqu'il est assuré qu'il n'y a pas de bogues significatifs dans la nouvelle version qui arrêteraient mon travail.
Il n'y a pas une seule façon de le faire, mais quelle que soit la manière que vous choisissez, choisissez celle qui vous serait la plus facile à gérer .
Désinstallation propre
Je suggérerais de créer un
rem_dep.sh
script qui ressemblerait à ceci.où
dep1, dep2, depn
sont les dépendances.Mise à niveau propre et facile
si vous obtenez le code source d'un système de version automatisé comme
git
oubazaar
ou si les liens sont prévisibles, vous pouvez créer un script shell quiDans d'autres cas également, vous pouvez créer de tels scripts avec un travail manuel dans une certaine mesure.
La gestion des conflits
--prefix
option lors de l'installation des logiciels et des dépendances.la source
Construire des dépendances:
AFAIK ils doivent être enregistrés manuellement. Vous pouvez créer un fichier comme README pour conserver la liste des dépendances installées manuellement.
Si ce logiciel a déjà un binaire intégré dans les référentiels Ubuntu ou PPA. Le suivi des dépendances pendant l'installation devrait être plus facile:
Désinstallation propre:
Conservez le dossier source configuré et installé. Mieux si vous collectez toutes les sources dans un dossier spécifique avec le fichier des dépendances installées.
Mise à niveau propre et isolation des fichiers installés:
Installez-les en particulier
--prefix
(de préférence--prefix=/opt/software_name-version/
).Cela résoudra de nombreux problèmes: versions simultanées avec celle du référentiel; mise à niveau propre; plus facile pour une désinstallation sale dans le cas où la source a été supprimée.
Plus sophistiqué ou le meilleur moyen, comme @muru répond, Construisez un paquet Debian (pour les paquets disponibles dans les dépôts Ubuntu / PPA)
la source