Qu'est-ce que rgrc ?
rgrc, le Rusty Generic Colouriser, est une réécriture rapide en Rust du classique grc. Placez-le devant une commande et il colore sa sortie : ping, df, ls, ps, docker, journalctl, kubectl, dig, mount, ip, netstat et environ 97 commandes au total, chacune pilotée par un fichier de configuration au format grc/grcat. Les configurations sont intégrées au binaire, il fonctionne donc dès l'installation, et il colore aussi les pipes (df -h | rgrc -c df). Les alias de shell qui colorent automatiquement les commandes habituelles tiennent en une ligne dans votre ~/.bashrc ou ~/.zshrc. Le paquet et la commande s'appellent tous deux rgrc.
grc original en Python), et upstream publie des binaires et un .deb dans les releases GitHub mais aucun dépôt apt : une copie installée à la main ne se met jamais à jour.
⚡ Fonctions clés de rgrc
🌈 Environ 97 commandes
Outils système, réseau, conteneurs et journaux prêts à l'emploi : df, free, ps, mount, ping, dig, ip, ss, docker, kubectl, journalctl et bien d'autres.
⚡ Binaire natif et rapide
Une réécriture en Rust du grc en Python : aucun interpréteur à lancer pour chaque commande colorée. Le paquet est un unique binaire lié statiquement.
📦 Configurations intégrées
Les configurations de commandes sont intégrées au binaire et installées aussi dans /usr/share/rgrc, avec la correspondance des commandes dans /etc/rgrc.conf.
🔀 Fonctionne avec les pipes
Colorez une sortie que vous avez déjà : df -h | rgrc -c df choisit une configuration par son nom et colore ce qui arrive sur l'entrée standard.
🐚 Alias de shell
eval "$(rgrc --aliases)" fait sortir ping, df ou docker en couleur sans taper rgrc. Excluez n'importe quelle commande avec --except.
🛠️ Règles au format grc
Les règles utilisent le format grc/grcat bien connu, en lignes regexp= et colours=, et les vôtres vont dans ~/.config/rgrc/.
apt upgrade vous maintient à jour.
📦 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 updatesudo apt install extrepo
sudo extrepo enable griffo
sudo apt update🆓 Il existe un miroir gratuit pour toujours. deb-free.griffo.io distribue des paquets gratuitement pour toujours — sans compte, sans abonnement, au plus 2 mois derrière l'upstream, correctifs de sécurité immédiats. Il contient aujourd'hui cliamp, Ghostty, lazydocker, Oh My Posh, Uncloud et Zed ; rgrc n'en fait pas partie, le dépôt ci-dessus reste donc le seul moyen de l'installer — demandez-le et il pourra y être ajouté.
🧩 À propos de l'option extrepo. extrepo est l'outil de Debian pour les dépôts externes : il écrit le fichier de sources et installe la clé de signature à votre place, après l'avoir vérifiée face à des métadonnées signées. Ce dépôt y est enregistré sous le nom griffo, et le miroir gratuit à vie sous griffo-free ; sur Debian (bookworm, trixie, forky et sid), les commandes ci-dessus constituent donc toute l'installation.
extrepo ne met en place que le fichier de sources et la clé : les identifiants d'un abonnement vont toujours dans /etc/apt/auth.conf.d/deb.griffo.io.conf. Ubuntu n'est pas couvert, car extrepo ne publie de métadonnées que pour les suites Debian : utilisez-y les commandes avec sudo ou en root.
Étape 2 : installer rgrc
# Installer le dernier rgrc
sudo apt install rgrc
# Vérifier l'installation
rgrc --version# Installer le dernier rgrc
apt install rgrc
# Vérifier l'installation
rgrc --versionÉtape 3 : activer les alias de shell (facultatif)
# Les alias ne sont pas activés par défaut : ajoutez cette ligne à ~/.bashrc ou ~/.zshrc
eval "$(rgrc --aliases)"
# Ouvrez un nouveau shell : les commandes habituelles sortent en couleur
ping -c 4 debian.org
df -h🎯 Exemples d'utilisation de base
Colorer une seule commande :
# Placez rgrc devant la commande à colorer
rgrc ping -c 4 debian.org
rgrc df -h
rgrc docker ps
rgrc journalctl -n 50Colorer la sortie d'un pipe :
# Choisir une configuration par son nom et colorer l'entrée standard
df -h | rgrc -c df
mount | rgrc -c mountChoisir les alias et les couleurs :
# Des alias pour toutes les commandes prises en charge sauf ls et ps
eval "$(rgrc --aliases --except ls,ps)"
# Forcer les couleurs quand la sortie part vers un pager
rgrc --color on ping -c 4 debian.org | less -RConfiguration et règles personnelles :
# Les configurations de commandes et la correspondance principale
ls /usr/share/rgrc/
cat /etc/rgrc.conf
# Vos propres règles vont ici, en lignes regexp= et colours= au format grc
mkdir -p ~/.config/rgrc
# Référence complète des options
man rgrc🔧 Intégrations avec d'autres outils
rgrc s'intègre à un flux de travail existant dans le terminal :
- Shells : les complétions bash, zsh et fish sont installées avec le paquet, et les alias fonctionnent dans tout shell capable de les charger avec
eval - grc : le
grcen Python de Debian peut rester installé : les commandes sontgrcetrgrc, et rgrc lit le même format de règles grc/grcat - Conteneurs :
docker ps,docker imagesetkubectl get podsse lisent d'un coup d'œil - Journaux : une sortie
journalctloù les erreurs et les avertissements sautent aux yeux - Diagnostic réseau :
ping,traceroute,dig,ss,netstatetipavec adresses, latences et états en couleur
🚀 Pourquoi choisir deb.griffo.io ?
- Debian officiel : non empaqueté : rgrc n'est dans aucune version de Debian, de Bookworm à Sid ; Debian ne fournit que le
grcoriginal en Python - Binaire upstream: à jour le jour du téléchargement, mais upstream publie des binaires et un .deb dans les releases GitHub sans dépôt apt :
apt upgradene voit jamais de nouvelle version, et chaque release est un nouveau téléchargement manuel - Compiler avec cargo install: demande une chaîne d'outils Rust et une recompilation à chaque mise à jour, et laisse de côté la page de manuel, les complétions et les fichiers de configuration
- deb.griffo.io : dernière version avec mises à jour automatiques
- ✅ Aucune dépendance à l'exécution: rgrc est un unique binaire Rust lié statiquement, sans aucune dépendance, et il s'installe à côté du
grcen Python de Debian - ✅ Mises à jour apt pour les releases upstream: upstream fournit des binaires et un .deb mais aucun dépôt ; ici chaque release arrive dans un dépôt apt signé GPG, avec une compilation pour chaque suite Debian et Ubuntu
- ✅ Mises à jour automatiques : les paquets sont mis à jour quelques heures après chaque version upstream
- ✅ Paquet complet:
/usr/bin/rgrc, la page de manuelrgrc(1),/etc/rgrc.conf, les 97 configurations de commandes dans/usr/share/rgrcet les complétions bash, zsh et fish - ✅ Quatre architectures: amd64, arm64, armhf et i386 : portables, serveurs, cartes Raspberry Pi et anciennes machines 32 bits ont le même rgrc
- ✅ Multi-distribution : fonctionne sur Bookworm, Trixie, Forky et Sid
- ✅ Maintenance simple : des mises à jour avec les commandes apt habituelles
📦 Dépôt de construction du paquet
Les paquets Debian sont construits et maintenus automatiquement dans ce dépôt GitHub :
- 🌈 rgrc-debian - Constructions des dernières versions
🔗 Paquets associés
Également disponibles sur deb.griffo.io :
- eza - Remplaçant moderne de ls, avec couleurs et icônes
- bottom - Moniteur graphique de processus et du système pour le terminal
- lazydocker - Interface terminal pour Docker et docker-compose
- fish - Shell interactif convivial aux complétions riches
ping, df, ps, docker et journalctl toute la journée, les utilisateurs de grc qui le veulent plus rapide et sans Python, colorer la sortie dans les pipes, et repérer erreurs et avertissements d'un coup d'œil.