Exile on Keyboard St. - Blog sur Linux et Debian

Aller au contenu | Aller au menu | Aller à la recherche

lundi 17 avril 2017

Un installeur d'archives pour Linux: liar

Quand on développe sous Linux, on est souvent amené à installer des logiciels sans être connecté en tant que root.

Ces logiciels livrés sous forme d'archive .zip ou .tar.gz la plupart du temps sont installés dans l'arborescence de l'utilisateur courant $HOME.

Cette façon d'installer un logiciel manuellement comprend les étapes suivantes:

  • Le téléchargement de l'archive
  • La création du répertoire d'installation
  • Le changement de répertoire
  • La décompression de l'archive

Toutes ces opérations manuelles, outre le fait qu'elles sont rébarbatives et conduisent trop souvent à des erreurs notamment sur les flags à utiliser pour décompresser l'archive.

De plus, il nous faut ensuite créer des liens symboliques vers les exécutables du logiciel, par exemple dans $HOME/bin, pour en faciliter son utilisation.

Le projet Linux Installer for ARchives ou liar comble ce vide en fournissant une ligne de commande permettant de réaliser toutes ces opérations en une seule fois.

liar permet donc d'installer, de lister et de supprimer tout logiciel livré sous forme d'archive dans le répertoire de votre choix, avec optionnellement la création des liens symboliques.

L'installation de liar est très simple puisqu'il suffit de copier un seul script Shell dans votre arbrorescence. La complétion bash peut également être utilisée à condition d'ajouter le fichier de complétion dans /etc/bash_completion.d/.

La documentation de Linux Installer for ARchives se trouve sur Framagit comme le reste du projet.

Cette documentation liste l'ensemble des fonctionnalités de liar et illustre de nombreux exemples d'utilisation. Elle n'est pour l'instant disponible qu'en Anglais.

liar est un logiciel libre, distribué selon les termes de la Licence Publique Générale GNU publiée par la Free Software Foundation, version 3 de la Licence (ou toute version ultérieure).

Pour en savoir plus sur le projet, vous pouvez consulter la vidéo d'introduction à liar:

vendredi 13 mai 2016

Installer proprement Java sur Debian

Pour installer Java sous Linux, vous avez le choix entre les façons de faire suivantes:

  • Installer un paquet JRE ou JDK de l'OpenJDK fourni par votre système,
  • Télécharger Java sur le site d'Oracle et l'installer à la main

On s'intéressera dans ce billet à la deuxième façon de faire. Si vous utilisez Red Hat, comme Oracle fournit un paquet au format rpm, l'installation sera simple.

En revanche, lorsque vous avez une archive .tar.gz du JDK ou du JRE, c'est le cas si votre système est Debian, deux solutions s'offrent à vous:

  • décompresser la tarball dans le répertoire $HOME de votre utilisateur,
  • le faire dans /opt et avoir ainsi Java disponible pour tous les utilisateurs de votre système

Encore une fois on s'intéressera ici à la deuxième façon de faire, mais on ne se contentera pas de décompresser l'archive à la main.

En effet, il existe dans la section contrib du dépôt Debian un paquet nommé java-package avec lequel on peut fabriquer un paquet au format .deb à partir de la tarball du JRE ou du JDK.

On procédera donc comme suit:

Etape 1: Ajouter la section contrib au fichier /etc/apt/sources.list

deb http://ftp.fr.debian.org/debian/ jessie main contrib
deb-src http://ftp.fr.debian.org/debian/ jessie main contrib

Etape 2: Installer le paquet java-package

sudo apt-get install java-package

Etape 3: Créer un paquet Debian à partir du JDK ou JRE d'Oracle

fakeroot make-jpkg Téléchargements/jdk-8u73-linux-x64.tar.gz

On voit qu'on ne le fait pas en root, on aurait une erreur sinon.

Etape 4: Installer le paquet Debian qu'on vient de générer

dpkg -i oracle-java8-jdk_8u73_amd64.deb

La procédure décrite ici pour installer Java à partir d'un paquet Debian .deb que l'on génère présente les avantages suivants:

  • Java est disponible pour tous les utilisateurs
  • Etant installé via un paquet natif du système, il peut être facilement supprimé
  • On peut très facilement passer d'une version de Java à une autre avec la commande update-java-alternatives