1. Installation et première exécution
Dans ce chapitre, tu vas mettre le binaire haw sur ta machine, confirmer qu’il fonctionne, activer la complétion par tabulation — puis lancer ta toute première exécution de haw, en regardant le cockpit au clavier s’ouvrir. C’est court : on te veut vite devant un prompt, et on veut que tu voies où le cours se dirige.
Une configuration unique, puis tu es au prompt pour le reste du cours.
🎯 Dans ce chapitre, tu vas apprendre à…
- Installer
hawvia le canal qui convient à ta machine — Cargo, Homebrew, Scoop ou le binaire statique musl. - Confirmer que le binaire est sur ton
PATHet affichehaw 0.1.7. - Activer la complétion par tabulation du shell pour qu’il complète les sous-commandes et les options au fur et à mesure que tu apprends.
- Lancer
hawune première fois et regarder le cockpit s’ouvrir — un avant-goût de là où tu vas.
L’outil est livré sous forme d’un binaire unique nommé haw. Aucun runtime, aucun interpréteur, rien à maintenir à jour à côté. La version actuelle est la v0.1.7.
📦 1. Installe-le
Choisis la ligne qui correspond à ta configuration — toutes installent le même binaire haw.
cargo install hawser # Rust / crates.io (canonique)
brew install nastwinns/tap/hawser # macOS + Linux (Homebrew)
Sous Windows, utilise Scoop :
scoop bucket add nastwinns https://github.com/Nastwinns/scoop-bucket
scoop install hawser
Sur un serveur Linux, un conteneur ou un hôte isolé du réseau, le binaire musl statique est le choix le plus simple — il est entièrement statique (pas de glibc, pas de runtime), donc un seul fichier s’exécute :
curl -sSL https://github.com/Nastwinns/hawser/releases/download/v0.1.7/haw-0.1.7-x86_64-unknown-linux-musl.tar.gz \
| tar xz && sudo install haw /usr/local/bin/
Astuce : cargo install hawser est l’installation Rust canonique. Elle compile depuis les sources et dépose haw dans ~/.cargo/bin — assure-toi que ce répertoire est bien dans ton PATH.
Pour tous les autres canaux (.deb/.rpm, AUR, Nix, Docker), ainsi que la vérification de signature et le workflow air-gap complet, voir Installing hawser.
✅ 2. Vérifie que ça marche
Quel que soit le canal utilisé, confirme que le binaire est dans ton PATH :
haw --version
Tu devrais voir la version s’afficher :
haw 0.1.7
Si tu obtiens « command not found », c’est que le répertoire d’installation n’est pas encore dans ton PATH — pour cargo, c’est ~/.cargo/bin. Corrige ça et relance.
Maintenant, jette un œil à la surface complète des commandes — pas besoin de tout lire, prends juste le pouls :
haw --help
Tu verras les sous-commandes que nous couvrirons : sync, status, tree, run, build, test, change, plugins, et d’autres encore. Chacune est un seul mot facile à deviner.
Un rapide aperçu de haw en ligne de commande — chaque sous-commande est un seul mot facile à deviner.
⌨️ 3. Active la complétion du shell
C’est un petit gain de confort qui paie tout au long du cours : tu appuies sur Tab et le shell complète les sous-commandes et les flags à ta place.
haw completions <shell> imprime un script de complétion sur stdout. Redirige-le vers le bon endroit pour ton shell :
haw completions zsh > ~/.zfunc/_haw # zsh
haw completions bash > /etc/bash_completion.d/haw # bash
haw completions fish > ~/.config/fish/completions/haw.fish # fish
Astuce : Pour zsh, assure-toi que ~/.zfunc est dans ton $fpath (ajoute fpath=(~/.zfunc $fpath) avant compinit dans ton ~/.zshrc), puis redémarre ton shell. Désormais haw sy<Tab> se complète en haw sync.
🚁 4. Ta première exécution — ouvre le cockpit
Voici la récompense. haw n’est pas qu’un lot de sous-commandes : lance-le sans aucune sous-commande et il ouvre un cockpit plein écran, piloté au clavier, pour ta flotte.
haw
Tu n’as pas encore d’espace de travail, donc il n’y a rien de réel à afficher. Bonne nouvelle : il y a un contrôleur de démo intégré, rempli de dépôts, de PR et d’exécutions de CI factices, pour que chaque vue contienne quelque chose — sans réseau, sans configuration :
haw dash --demo
Une grille de flotte en direct remplit le terminal. Déplace-toi avec ↑/↓ (ou k/j, façon Vim), appuie sur Enter pour plonger dans un dépôt, Esc pour revenir, ? pour l’aide en surimpression, et q pour quitter.
Le cockpit que tu viens d’ouvrir : la grille de flotte, les explorations détaillées et les actions au clavier — le tout dans le terminal.
Juste un avant-goût pour l’instant. Fouille un peu, puis quitte avec q. Nous ferons une vraie visite guidée du cockpit au chapitre 4 — mais d’abord il te faut une vraie flotte à lui pointer, et c’est ce que construisent les trois chapitres suivants.
✅ Récapitulatif
hawest un binaire unique — installe-le aveccargo,brew,scoop, ou l’archive musl statique.haw --versiondoit afficherhaw 0.1.7;haw --helpliste toutes les commandes.haw completions <shell>te donne la complétion par tabulation — configure-la maintenant, tu te remercieras plus tard.hawseul (ouhaw dash --demo) ouvre le cockpit — ton premier aperçu du centre de contrôle, exploré en profondeur au chapitre 4.- La matrice d’installation complète couvre les releases signées et les hôtes isolés du réseau.
🙌 À toi de jouer
Point de contrôle de deux minutes — prouve ton installation avant de continuer :
- Lance
haw –versionet confirme que tu voishaw 0.1.7. S’il affiche « command not found », le répertoire d’installation n’est pas encore sur tonPATH— corrige ça d’abord. - Configure les complétions pour ton shell, redémarre-le, puis tape
haw syet appuie surTab. Ça devrait se compléter enhaw sync. - Lance
haw dash –demo, déplace-toi avec↑/↓, appuie surEnterpour entrer dans un dépôt etEscpour en sortir, puisqpour quitter. Tu viens de rencontrer le cockpit.
👉 La suite
Maintenant, donnons à haw quelque chose de réel à gérer. Premier arrêt : le manifeste — là où tu déclares ta flotte → 2. Le manifeste.