Qu'est-ce que Ruff ?
Ruff est un linter et formateur de code Python ultra-rapide, écrit en Rust par Astral — l'équipe derrière uv. Avec plus de 800 règles intégrées et des réimplémentations natives des plugins populaires, un unique binaire ruff remplace Flake8, isort, Black, pyupgrade, autoflake et des dizaines de plugins, tout en s'exécutant 10 à 100× plus vite. Il est devenu le linter par défaut de l'écosystème Python moderne, adopté par des projets comme FastAPI, Pandas et Hugging Face.
apt upgrade vous garde toujours à la dernière version.
⚡ Fonctionnalités clés de Ruff
🏎️ 10–100× plus rapide
Analyse de grandes bases de code en millisecondes là où les outils historiques prennent des minutes — assez rapide pour tourner à chaque sauvegarde et dans chaque pipeline CI.
🧰 Un outil, 800+ règles
Réimplémente Flake8, isort, pyupgrade, pydocstyle, eradicate et plus encore — une seule configuration dans pyproject.toml remplace une pile de plugins.
🖤 Formateur drop-in
ruff format est un formateur compatible Black — même style, plusieurs ordres de grandeur plus rapide, aucun outil séparé à installer.
🔧 Corrections automatiques
Des centaines de règles offrent des corrections automatiques : imports inutilisés, syntaxe modernisée, imports triés — ruff check --fix et c'est réglé.
🐍 Conscient des versions
Cible n'importe quel Python à partir de 3.7 avec un comportement des règles par version, une configuration hiérarchique adaptée aux monorepos et des exceptions par fichier.
🔌 Intégrations éditeur
Un serveur de langage intégré (ruff server) alimente des intégrations de premier ordre pour VS Code, Zed, Neovim et Helix depuis le même binaire.
🏆 Pourquoi l'installer avec apt ?
- Système, sans pip : un binaire pour chaque projet, venv, job CI et utilisateur — pas d'installations par projet à garder synchronisées
- Parfait pour les images Docker/CI : intégrez le dépôt dans vos images de base et chaque pipeline obtient automatiquement un ruff à jour
- Aucune toolchain : pas de Rust, pas de cargo, pas de pip — un dépôt apt signé avec des binaires précompilés pour 8 architectures
- Mises à jour automatiques : ruff publie fréquemment ;
apt upgradesuit le rythme pour que vos règles ne soient jamais périmées - En tandem avec uv : le gestionnaire de paquets d'Astral est également disponible ici — toute la chaîne Python moderne depuis un seul dépôt
📦 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 et Zed ; Ruff 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 Ruff
sudo apt install -y ruffapt install -y ruff🚀 Premier lancement
Lintez et formatez votre projet :
ruff check . # lint
ruff check --fix . # lint and auto-fix
ruff format . # format (Black-compatible)📦 Dépôt de construction de paquets
Les paquets Debian sont automatiquement construits et maintenus dans ce dépôt GitHub :
- 📂 ruff-debian - Builds des dernières versions
🔗 Paquets associés
Également disponible depuis deb.griffo.io :
- uv - Le gestionnaire de paquets Python ultra-rapide d'Astral — le compagnon idéal de ruff
- Zed - Un éditeur rapide avec une intégration ruff de premier ordre
- just - Un lanceur de commandes pour vos workflows lint/format/test
💝 Soutenez ce projet
Si ce dépôt vous fait gagner du temps et des efforts, pensez à le soutenir !
