Aller au contenu

Stow

GNU Stow est un outil capable de gérer les dotfiles, c'est à dire les fichiers de configuration comme .bashrc par exemple.

Il permet de centraliser les fichiers de configs dans un dossier. Pratique pour sauvegarder tous le dossier d'un coup.

Ce qu'il fait, en gros, c'est de gérer des liens sympboliques des fichiers de config présents à certains endroits dans un dossier particulier.

Exemple d'arborescence

~/dotfiles/
└── bash/
    └── .bashrc
└── ssh/
    └── config

Préparation des dossiers

  • Création d'un dossier dotfiles (par exemple)
  • Création d'un sous-dossier pour bash
  • Création d'un sous-dossier pour ssh
mkdir -p ~/dotfiles/bash
mkdir -p ~/dotfiles/ssh

Déplacement des fichiers

Penser à sauvegarder les fichiers au cas où !

  • Déplacer le fichier .bashrc dans ~/dotfiles/bash/.bashrc
  • Déplacer le fichier ~/.ssh/config dans ~/dotfiles/ssh/config

Création des liens symboliques avec stow

  • Se déplacer dans le dossier ~/dotfiles
cd ~/dotfiles
  • Stow de bash

stow bash
À partir de là, un lien symbolique a été crée automatiquement.

Résultat de la commande:

lrwxrwxrwx 1 jo jo 21  8 juil. 10:46 /home/jo/.bashrc -> dotfiles/bash/.bashrc

Supprimer un lien

Toujours dans le dossier ~/dotfiles, on utilisera l'option -D pour supprimer le lien.

stow -D bash
On peut à présent synchroniser notre dossier dotfiles, avec les fichiers de config souhaités, avec Git par exemple.