Qu'est-ce que yq ?
yq est un processeur en ligne de commande léger et portable pour les données structurées — fichiers YAML, JSON, XML, CSV, TOML et properties — écrit en Go par Mike Farah. Il utilise une syntaxe façon jq, donc tout ce que vous connaissez de jq se transfère directement : interrogez, transformez, fusionnez et modifiez des fichiers en place, dans vos scripts et vos pipelines, avec un unique binaire sans dépendances.
yq en python présent dans certaines archives ; ce paquet le remplace proprement, et ni python ni jq ne sont requis.
apt upgrade vous garde toujours à la dernière version.
⚡ Fonctionnalités clés de yq
🔄 Six formats
YAML, JSON, XML, CSV/TSV, TOML et properties — lisez un format, produisez-en un autre : yq -o=json '.' config.yaml convertit en une seule étape.
🧠 Syntaxe façon jq
Chemins, pipes, fonctions et opérateurs familiers. Si vous savez écrire un filtre jq, vous savez déjà utiliser yq sur du YAML.
✏️ Édition en place
yq -i '.spec.replicas = 3' deploy.yaml — des modifications scriptées des manifestes Kubernetes, des configs CI et des fichiers Compose, commentaires préservés.
📦 Zéro dépendance
Un unique binaire Go statique. Pas de runtime, pas de bibliothèques, pas de python — idéal pour les conteneurs minimaux et les runners CI.
🔀 Fusion & ancres
Fusionne en profondeur plusieurs fichiers, résout les ancres et alias YAML, gère les flux multi-documents — les cas YAML difficiles traités correctement.
📖 Page man incluse
Ce paquet fournit la page man complète avec le binaire — man yq fonctionne hors ligne, conformément aux conventions Debian.
🏆 Pourquoi l'installer avec apt ?
- Pensé pour les flottes : épinglez un seul dépôt dans vos images de base et chaque serveur, conteneur et runner CI obtient le même yq à jour
- 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 - Le bon yq : garantit la sémantique mikefarah/yq v4 partout — pas de surprises avec le wrapper python sur certaines machines
- Mises à jour automatiques : les nouvelles versions upstream arrivent avec votre
apt upgradehabituel - Multi-arch : amd64, arm64, armhf, ppc64el, s390x et riscv64
📦 Installation depuis deb.griffo.io
Étape 1 : Ajouter le dépôt
Étape 2 : Installer yq
🚀 Premier lancement
📦 Dépôt de construction de paquets
Les paquets Debian sont automatiquement construits et maintenus dans ce dépôt GitHub :
- 📂 yq-debian - Builds des dernières versions
🔗 Paquets associés
Également disponible depuis deb.griffo.io :
- k9s - TUI Kubernetes — se marie avec yq pour manipuler les manifestes
- lazydocker - TUI Docker pour les fichiers Compose que vous venez de modifier
- just - Un lanceur de commandes pour encapsuler vos one-liners yq
💝 Soutenez ce projet
Si ce dépôt vous fait gagner du temps et des efforts, pensez à le soutenir !