A robust and automated system upgrade script for multiple Linux distributions. It streamlines the update process for APT, DNF, Flatpak, Snap, and Homebrew, while ensuring system stability — especially for NVIDIA users.
Supported Distributions:
- Fedora/RHEL based
- Fedora
- RHEL
- Alma
- Rocky
- Debian/Ubuntu based
- Debian
- Ubuntu
- Pop OS
- Linux Mint
- Zorin OS
- Arch based
- Arch Linux
- EndeavourOS
- CachyOS
- Any distribution with Flatpak, Snap, or Homebrew
- Multi-Distribution Support: Automatically detects your Linux distribution and uses the appropriate package manager (DNF for Fedora/RHEL, APT for Ubuntu/Debian, Pacman for Arch)
- Comprehensive Updates: Updates system packages, Flatpak, Snap, and optionally Homebrew
- Kernel Safety: Detects kernel updates, requests user confirmation, and automatically rebuilds
initramfs - NVIDIA Driver Support: Checks and rebuilds NVIDIA drivers to ensure they persist across kernel updates (Fedora/RHEL)
- Maintenance: Automatically cleans old package caches and metadata
tuxgrade [options]-b,--brew: Include Homebrew packages in the update.
Tuxgrade is distributed through Homebrew on Linux.
brew install Lineax17/tap/tuxgradeTo update Tuxgrade to the latest available version:
brew update
brew upgrade tuxgradeTo uninstall it:
brew uninstall tuxgradeTuxgrade is currently distributed exclusively through the official Homebrew tap. DEB and RPM packages are no longer provided.
For other distributions or development purposes:
git clone https://github.com/Lineax17/tuxgrade.git
cd tuxgrade
pip install .- User Guide - Installation, usage, and troubleshooting
- Architecture - System design and architecture
- Developer Guide - Contributing and development
- API Reference - Complete API documentation
- FAQ - Frequently asked questions
Contributions are welcome! Please read the Developer Guide for details on:
- Setting up development environment
- Running tests
- Code style guidelines
- Submitting pull requests
This project is licensed under the MIT License - see the LICENSE file for details.
AI tools were used to assist in the development of this project, primarily for documentation, help with the build pipeline, and the creation of the deprecated legacy DNF and APT repositories.
The main project (src) contains a few lines of AI-generated code as well, but these have been thoroughly reviewed and tested by me. This project is not AI-generated slop.