URL: https://linuxfr.org/news/loco-sh-programmez-votre-terminal-comme-un-pro Title: Loco.sh - programmez votre terminal comme un pro Authors: t0pd4wn Pierre Jarillon, palm123, Benoît Sibaud, Nÿco, gUI et volts Date: 2023-04-25T17:33:30+02:00 License: CC By-SA Tags: linux, bash et ansible Score: 3 Né de l'absence de solutions clés en mains et complètes pour la gestion de l'environnement utilisateur Unix (paquets, fonts, styles, scripts...), Loco.sh propose un framework bash complet pour coder son environnement, soit en [YAML](https://fr.wikipedia.org/wiki/YAML), soit en fichiers plats. Loco.sh permet donc de centraliser la gestion : - des paquets (apt, snap, ppa, pip...) - des dotfiles (pour vim, zsh...) - du style (police, couleurs du term, fond d'écran) Pour utiliser Loco.sh, c'est simple, facile et fourni avec des exemples. ---- [Github - Loco.sh](https://github.com/t0pd4wn/loco.sh) ---- # Installation Loco.sh est fourni avec plusieurs profils d'exemple (zsh, vim...) et peut s'installer en une commande : Pour la version interactive : `bash <(echo https://bit.ly/l0c0-sh|(read l; wget -qO- $l 2>/dev/null || curl -L $l)); exit ` Pour la version _**loco**_ automatique (attention, écrase les dotfiles) : `bash <(echo https://bit.ly/l0c0-sh|(read l; wget -qO- $l 2>/dev/null || curl -L $l)) -Ya install -p full; exit ` ![Titre de l'image](https://raw.githubusercontent.com/t0pd4wn/loco.sh/gh-main/dist/loco_demo_0.7_Ubuntu.gif) # Comparaison de `loco.sh` avec les solutions de "configuration unifiée" existantes ## Solutions d'orchestration comme `Ansible` Loco.sh se distingue d'[Ansible](https://fr.wikipedia.org/wiki/Ansible_(logiciel)) par son approche locale, si on peut installer un profil depuis une URL, la commande se passera depuis l'environnement local (contre un environnement distant préconfiguré à travers ssh avec Ansible). On pourrait imaginer utiliser Ansible pour installer loco.sh avec un profil orienté UX par exemple. Loco.sh a très peu de dépendances (une obligatoire pour parser les fichiers YAML) et est écrit 100% en bash, ce qui le rend facilement maintenable et utilisable. L'installation d'un profil se fait en une seule ligne de commande. ## OS avec solution intégrée comme `NixOS` ou `guix` Si votre système supporte bash et expose ses propriétés à l'utilisateur (comme [Gnome](https://fr.wikipedia.org/wiki/GNOME) par exemple) vous pourrez créer un profil loco qui vous permettra de rejouer votre configuration (dans le cas d'une reinstallation ou d'un poste multi VMs).