À propos du projet

nog est un gestionnaire de paquets Arch Linux écrit en Rust qui ajoute un système de gel à plusieurs niveaux par-dessus pacman. Plutôt que de remplacer pacman, il utilise les mêmes commandes et options tout en introduisant des délais de mise à jour basés sur l'importance des paquets. **Système de niveaux :** Les paquets sont classés en trois niveaux avec des durées de gel configurables : - Niveau 1 (noyau, chargeur d'amorçage, glibc, systemd, mesa) : gel de 30 jours - Niveau 2 (environnements de bureau, applications clés) : gel de 15 jours - Niveau 3 (tout le reste) : gel de 7 jours Les gels comptent à partir de la première apparition d'une mise à jour, pas de la version la plus récente, ce qui évite que des paquets très actifs soient gelés indéfiniment. Une fois le gel expiré, la version la plus récente doit également passer un « délai de sécurité » plus court (7/3/1 jours selon le niveau) avant installation. **Support multi-sources :** nog gère les mises à jour des dépôts officiels pacman, AUR (via yay ou paru), Flatpak et Snap. Chaque source peut être activée ou désactivée individuellement. Les gels Snap sont placés dans snapd lui-même pour empêcher tout contournement par auto-rafraîchissement. **Fonctionnalités de sécurité :** Les paquets de trousseau de clés ne sont jamais gelés. Des interrupteurs d'arrêt peuvent couper les sources AUR ou chaotic-aur en cas d'incident. nog s'exécute en tant qu'utilisateur normal et ne passe en root qu'à des moments précis. Les gels utilisent l'option --ignore de pacman. Les assistants AUR ne reçoivent que des noms de paquets nettoyés, empêchant tout contournement par des recherches échouées. **Rapports :** Les mises à jour sont regroupées en catégories Prêtes, Gelées et Inconnues avec des couleurs par niveau. Un tableau récapitulatif montre l'état par dépôt. Chaque exécution est journalisée dans un fichier CSV daté conservé pendant 90 jours. Un conseil de redémarrage est fourni lorsque des mises à jour du noyau ou des pilotes laissent le système en cours d'exécution désynchronisé. **Maintenance :** nog clean efface les anciens téléchargements du cache de pacman avec une rétention par niveau (3 versions pour le niveau 1, 2 pour le niveau 2, 1 pour le niveau 3), en conservant toujours les versions installées pour un retour en arrière. **Configuration :** Les affectations de niveaux et les durées de gel sont configurées dans /etc/nog/. Les paquets peuvent être épinglés à des niveaux, groupés pour être déplacés ensemble (par exemple, noyau et en-têtes), et le niveau 1 peut exiger une validation manuelle en mode expert.