Une astuce toute bête, qui n’intéressera que 1024 geeks sur toute la planète : partager son fichier de configuration bash entre plusieurs Mac.
Qui ?
Si vous ne connaissez pas, le Bash c’est le Terminal du Mac — le tonnerre se met à gronder comme si un million de Wozniack passaient en Sedgwick sous votre fenêtre, la pluie battante s’écrase sur votre fenêtre comme des moustiques sur le pare-brise de votre voiture un soir d’été, par votre fenêtre, tremblant sous la couette, vous voyez le ciel noir comme le coeur d’un spéculateur déchiré par des éclairs plus aveuglants que le sourire d’une blonde dans une pub pour du dentifrice — c’est la terrrrrrrifiaaaaaante ligne de commande.
La ligne de commande, vous me direz, en levant les bras au ciel, mais c’est pour les programmeurs et les barbus en sandales. Pas seulement. Je ne programme rien, même pas ma vie, j’écris. Et pourtant j’utilise énormément le Terminal.
Pourquoi ?
Pour gagner du temps.
Par exemple, il suffit que je tape :
mns
, un alias de 3 lettres donc, pour que le terminal exécute un script qui va se charger de créer, dans le dossier de mon choix, un dépôt Mercurial, puis le remplir avec les fichiers dont j’ai habituellement besoin pour commencer une nouvelle histoire.- Si je tape
mknote
, il va créer une nouvelle note, un fichier texte auto daté et nommé comme je le souhaite, dans le dossier de mon choix, qui contiendra le contenu du presse papier. - Si je tape
cdf
il va aller dans le dossier actuellement affiché dans le Finder. - D’autres me permettent de transformer à la volée une poignée de fichiers Markdown en un bel ePub — sans même avoir le temps de savourer une bonne tasse de thé.
- Etc. Etc.
De vous à moi rien de bien compliqué, certainement pas de quoi remporter la coupe du geek de l’année : des petites choses qui me servent en permanence et que j’apprécie de retrouver sur mes deux Mac. Na.
Comment ?
Vous l’aurez deviné, ça passe par l’irremplaçable Dropbox.
Il y a plusieurs façons de faire, j’utilise la plus bête qui consiste à ne pas stocker mes commandes dans le fichier prévu à cet effet (càd pas dans le fichier ~/.bashrc), mais dans un fichier stocké sur la Dropbox, plus exactement dans /Users/david/Dropbox/perso/scripts/scripts/dotfiles/bashrc
(oui, y a deux fois un dossier “scripts”, une erreur de jeunesse que je suis trop paresseux pour corriger).
Pour indiquer au Terminal où le trouver, je crée ou modifie le fichier ~/.bash_profile
, en lui ajoutant cette ligne :
source /Users/david/Dropbox/perso/scripts/scripts/dotfiles/bashrc
C’est tout. C’est pas joli, mais a le mérite d’être clair : Machine, (ta) source (d’information) est là-bas. Va lire et reviens prendre mes ordres, esclave.
Les plus observateurs auront tout de suite tilté : si on peut le faire avec un fichier, on peut le faire avec plusieurs et ainsi répartir les différentes commandes dans différents fichiers, pour plus de lisibilité ou selon les besoins de chacun :
J’ai donc trois fichiers, liés à mon bashrc, lui-même lié à mon ~/.bash_profile
. On s’y prend de la même façon, en ajoutant une source pour chaque fichier.
Deux astuces, pour finir ?
Elles sont tout aussi bêtes que l’idée de placer le fichier de configuration dans la Dropbox, et aussi plaisante à l’usage :
Vu que je l’utilise beaucoup, je le fais souvent évoluer, je dois chaque fois l’ouvrir dans TextMate. Plutôt que d’aller le chercher, chaque fois, au fin fond du Finder, j’ai créé un alias qui ouvre directement le fichier dans TextMate :
alias ema="mate -w ~/Dropbox/perso/scripts/scripts/dotfiles/bash/aliases"
Plus un autre alias, pour mettre à jour le Terminal avec les nouvelles configurations :
alias reload=" source ~/.bash_profile"
Notez qu’elles pourraient être fusionnées en une seule commande…
Pingback: « Moi aussi je le savais » : comment partager sa configuration Bash entre plusieurs Mac | tiaaft
Pingback: Partager un bashrc entre plusieurs Mac | Geekunivers