Qu'est-ce que Nushell ?
Nushell (la commande nu) est un shell moderne construit autour des données structurées. Au lieu de faire transiter du texte brut entre les commandes, chaque pipeline transporte des tables et des enregistrements typés — ls renvoie des lignes que vous pouvez filtrer, trier et additionner, et JSON, YAML, CSV, TOML et SQLite sont des citoyens de première classe. Il combine un vrai langage de programmation avec un shell interactif, offrant d'emblée des messages d'erreur clairs, l'autocomplétion et la coloration syntaxique.
nu dans /etc/shells à l'installation (et le retire proprement à la désinstallation), donc chsh -s /usr/bin/nu fonctionne immédiatement — aucune édition manuelle. Le binaire est lié statiquement (musl), votre shell continue donc de fonctionner quelles que soient les mises à jour de bibliothèques.
apt upgrade vous garde toujours à la dernière version.
⚡ Fonctionnalités clés de Nushell
📊 Pipelines structurés
Les commandes émettent des tables, pas du texte : ls | where size > 1mb | sort-by modified — sans gymnastique awk, cut ou sed.
🔄 Tous les formats de données
Ouvrez et transformez JSON, YAML, CSV, TOML, XML et SQLite nativement : open Cargo.toml | get package.version.
🧠 Un vrai langage
Variables typées, closures, commandes personnalisées et modules — avec des messages d'erreur dignes d'un compilateur qui pointent l'emplacement exact.
🔌 Plugins inclus
Fournit les plugins officiels : polars (dataframes), query (JSON/XML/web scraping), formats, gstat et inc.
🔐 Prêt pour le shell de connexion
Enregistré dans /etc/shells par le paquet — basculez avec chsh -s /usr/bin/nu dès qu'apt a terminé.
📦 Zéro dépendance
Un unique binaire statique musl. Pas de runtime, pas de bibliothèques susceptibles de casser — idéal pour un programme qui vous sert de session.
🏆 Pourquoi l'installer avec apt ?
- Sûr pour un shell : builds liés statiquement, enregistrés et désenregistrés dans
/etc/shellspar les scripts du paquet — les détails qui comptent quand il s'agit de votre shell de connexion - Plugins inclus : le jeu de plugins officiel est fourni dans le même paquet, aligné sur la version exacte de nu (les plugins l'exigent)
- Pas de curl-vers-bin : un dépôt signé GPG au lieu de télécharger des binaires à la main dans
/usr/local/bin - Mises à jour automatiques : les nouvelles versions upstream arrivent avec votre
apt upgradehabituel — important, Nushell publiant une version chaque mois - Multi-arch : amd64, arm64, armhf et riscv64
📦 Installation depuis deb.griffo.io
Étape 1 : Ajouter le dépôt
sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | sudo gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | sudo tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
sudo apt updateinstall -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
apt updateÉtape 2 : Installer Nushell
sudo apt install -y nushellapt install -y nushell🚀 Premier lancement
nu # start an interactive session
ls | where size > 1mb | sort-by modified # structured pipelines
open /etc/os-release | lines | parse "{key}={value}" # parse anything
chsh -s /usr/bin/nu # make it your login shellLes plugins s'enregistrent une fois par utilisateur depuis nu, par exemple :
plugin add /usr/bin/nu_plugin_query
plugin add /usr/bin/nu_plugin_polars📦 Dépôt de construction de paquets
Les paquets Debian sont automatiquement construits et maintenus dans ce dépôt GitHub :
- 📂 nushell-debian - Builds des dernières versions
🔗 Paquets associés
Également disponible depuis deb.griffo.io :
- starship - Un prompt multi-shell avec une prise en charge de Nushell de premier ordre
- atuin - Historique de shell consultable et synchronisable — fonctionne dans nu
- zoxide - Un cd plus malin qui s'intègre à Nushell
💝 Soutenez ce projet
Si ce dépôt vous fait gagner du temps et des efforts, pensez à le soutenir !