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
- 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)
- Comprehensive Updates: Updates system packages, Flatpak, Snap, and optionally Homebrew
- Kernel Safety: Detects kernel updates on rolling release distros (like Fedora), requests user confirmation, and automatically rebuilds
initramfs - NVIDIA Driver Support: Checks and rebuilds NVIDIA drivers to ensure they persist across kernel updates (Fedora/RHEL)
- Modes:
- Silent (Default): Clean interface with progress spinners
- Verbose (
-l/--verbose): Detailed output for debugging or monitoring
- Maintenance: Automatically cleans old package caches and metadata
tuxgrade [options]Note: For backward compatibility, the commands fedora-update and fedora-upgrade still work as aliases.
-l,--verbose: Enable detailed output.-b,--brew: Include Homebrew packages in the update.
Add the repository:
sudo curl -o /etc/yum.repos.d/tuxgrade.repo https://raw.githubusercontent.com/Lineax17/tuxgrade/master/extras/tuxgrade.repoInstall tuxgrade:
sudo dnf install tuxgradeAdd the repository:
sudo curl -o /etc/apt/sources.list.d/tuxgrade.list https://raw.githubusercontent.com/Lineax17/tuxgrade/master/extras/tuxgrade.listUpdate the repository:
sudo apt updateInstall tuxgrade:
sudo apt install tuxgradeFor 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 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.