Ce projet est prévu pour mon usage personnel, il est donc fortement opinioné et le restera.
Ce projet a pour but d’installer tous les outils et applications représentant un minimum requis pour mon environnement de travail. Il se compose d’un script d’installation et de quelques fichiers de configuration (linux quick install).
Le script d’installation est prévu pour être exécuté sur un environnement Ubuntu récent. Il sera mis à jour lorsque mes besoins et habitudes évolueront.
Mise à jour des dépendances de la distribution est effectuée, installation des paquets « courants » pour le build (software-properties-common
et build-essential
) et ajout du support de HTTPS pour apt
(apt-transport-https
et ca-certificates
).
Le script installe et configure également les applications et utilitaires listés ci-après.
- terminator - Terminal
- Google Chrome - Navigateur
- Visual Studio Code - IDE
- GitKraken - GUI pour
git
- Sqlectron - Client SQL
- Lens - Kubernetes IDE
- zsh - Shell
- oh-my-zsh - Plugins et thèmes pour
zsh
- git - Contrôle de version
- curl - HTTP FTW
- gnupg - Chiffrement
- exa - Remplacement de
ls
- docker - Gestion de conteneurs
- gcloud - CLI pour opérer Google Cloud
- aws - CLI pour opérer AWS
- kubectl - CLI pour opérer des clusters Kubernetes
- openjdk - Java Development Kit
- nvm - Gestionnaire de versions pour
node.js
- node.js - Environnement d’exécution JavaScript
- npm - Gestionnaire de paquet pour
node.js
- Docker - Support des fichiers Dockerfile
- DotENV - Support des fichiers .env
- Markdown All in One - Support complet du markdown avec prévisualisation
- StandardJS - JavaScript Standard Style - Intégration de
standard
- vscode-icons - Pack d’icônes
- npm-check-updates - Gestionnaire de mise à jour des paquets
npm
- standard - Style de code JS
- yarn - Gestionnaire de paquet alternatif pour
node.js
Un fichier .zprofile
est créé et sourcé depuis le .zshrc
. Ce fichier contient les éléments suivants :
- définition de la variable d’environnement
DEFAULT_USER
- remplacement de
ls
parexa
via un alias - alias
k
pourkubectl
- fonction
mkcd
(créé un répertoire etcd
dedans) - chargement automatique de
nvm
- configuration du prompt
pure
Un profil par défaut est défini :
- style du terminal : texte gris clair sur fond gris/bleu très sombre
- tampon de défilement : 50000 lignes
- commande personnalisée :
/bin/zsh
Des keybindings personnalisés sont également définis pour une utilisation plus facile avec un clavier TypeMatrix en disposition de touches BÉPO.
Alt + W
- Fermer la fenêtre active du terminalMaj + Alt + D
- Scinder le terminal horizontalementAlt + D
- Scinder le terminal verticalement
Voici les paramètres définis :
- sauvegarde automatique à la perte du focus
- indentation de 2 espaces
- ne pas afficher les espaces entre les mots
- retour à la ligne automatique à 120 caractères
- formattage automatique à la copie et sauvegarde
- utilisation de
vscode-icons
en tant que pack d’icônes par défaut - réouvrir toutes les fenêtres après un redémarrage
- shell du terminal linux intégré
zsh
- désactivation du crash reporter
- désactivation de la télémétrie
standard
autofix lors de la sauvegardestandard
utilise le module du répertoire de travail courant- désactivation de la validation JavaScript intégrée (remplacée par l’extension eslint)
Tous les lauriers vont à Christophe Porteneuve pour ce fichier de configuration Git aux petits oignons !
Deux méthodes sont possibles pour exécuter le script :
- via
wget
:
wget --no-check-certificate "https://raw.githubusercontent.com/nicolas-goudry/liquinstall/master/install.sh" -O - | bash
- via
curl
:
curl -L "https://raw.githubusercontent.com/nicolas-goudry/liquinstall/master/install.sh" | bash