Skip to content

About

Lightweight system update tool for Ubuntu and all official flavors. It handles APT, flatpaks and snaps + it handles updates of mainline kernels and signing for secure boot for these intelligently

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

Canonic-Update

Version License: GPL v3 Platform Support on Ko-fi

Canonic-Update is a modular, high-performance system update suite and system tray monitor tailored specifically for Ubuntu and Ubuntu-based distributions (including Kubuntu, Xubuntu, Lubuntu, Ubuntu MATE, Ubuntu Budgie, Ubuntu Studio, and Pop!_OS).

It provides unified tracking and management across APT, Flatpak, Snap, and Ubuntu Mainline Kernels—complete with automatic Secure Boot MOK signing, intelligent k-slot kernel retention, and desktop-aware session inspection.


📸 Visual Tour & Screenshots

1. System Tray Monitor & Overview Menu

System Tray Menu Real-time indicator displaying categorized update summaries, time since last background check, estimated next check schedule, and one-click actions for on-demand inspection and interactive upgrades.


2. Multi-Language Selection Interface

Language Selection Built-in multi-language switcher supporting 20 native languages with instant, in-memory string resolution and persistent user preferences.


3. Interactive CLI Upgrade Companion

CLI Interface Streamlined terminal companion providing granular review, phased-update compliance, kernel auto-signing verification, unused runtime purging, and intelligent reboot recommendations.


✨ Key Features & Highlights

🔄 Unified Multi-Tier Package Management

  • APT Package Tracking: Inspects standard repositories, PPAs, and backports without overriding Canonical's phased update rollouts.
  • Flatpak Integration: Simultaneously queries both system-wide and active user-session Flatpak runtimes with background AppStream index synchronization.
  • Snap Ecosystem Support: Tracks Snap application upgrades with live refresh status detection.

🛡️ Mainline Kernel Tracking with Secure Boot Armor

  • Intelligent Conditional Tracking: The background engine stays completely passive on standard Ubuntu stock kernel setups. The moment a user installs an upstream mainline kernel, Canonic-Update automatically enables mainline monitoring.
  • Upstream PPA Polling & Notifications: Periodically inspects Canonical's official mainline archive (https://kernel.ubuntu.com/~kernel-ppa/mainline/), comparing available upstream releases against the highest installed kernel in /boot to deliver prompt notifications whenever a newer stable kernel is available.
  • Zero-Intervention Kernel Signing: Automatically signs newly installed Ubuntu Mainline Kernels during dpkg post-installation hooks using machine-enrolled MOK keys (/var/lib/shim-signed/mok/ or DKMS). If Secure Boot is disabled in UEFI, signing routines remain completely passive with zero overhead.
  • DKMS & NVIDIA Driver Alignment: Guarantees that newly compiled NVIDIA kernel modules and mainline kernel binaries share matching local MOK certificate signatures.

🧹 2-Slot Mainline Kernel Retention Policy

  • Automatic Storage Safeguard: Retains strictly the 2 latest mainline kernel versions on the system, safely uninstalling obsolete mainline versions during maintenance cycles to preserve /boot partition space and keep the GRUB bootloader clean.
  • Protected Stock Fallbacks: Official Ubuntu HWE and OEM distribution kernels are never touched.

🎨 Adaptive Flavor & Desktop Detection

  • Native Desktop Identification: Dynamically reads system metadata and desktop environments ($XDG_CURRENT_DESKTOP) to apply custom badged icons representing your specific flavor (Ubuntu, Kubuntu, Xubuntu, Lubuntu, Ubuntu MATE, Pop!_OS, etc.).
  • Dynamic Badges: Vector-rendered status emblems (green checkmark for clean, red down-arrow for pending updates, and animated dual-arrows for live background checks).

⚡ Blazing Fast In-Memory i18n

  • 20 Supported Languages: English, Norwegian (Bokmål & Nynorsk), Danish, Swedish, German, French, Spanish, Italian, Dutch, Portuguese, Polish, Russian, Finnish, Icelandic, Japanese, Korean, Chinese, Hindi, and Northern Sami.
  • Sub-millisecond Execution: Shell scripts load complete translation dictionaries in a single pass (--export-env), eliminating process spawning overhead.

🚀 Fully Automated, Zero-Configuration Setup

  • Self-Configuring Package: Installing the .deb package instantly enables systemd timers, applies non-interactive Polkit rules, configures XDG autostart, and spawns the tray icon inside current graphical sessions without requiring logout or reboot.

📥 Installation

Download the latest .deb release package and install via APT or dpkg:

# Install via APT (resolves dependencies automatically)
sudo apt install ./canonic-update.deb

# Or install via dpkg
sudo dpkg -i canonic-update.deb
sudo apt-get install -f

Everything starts automatically in the background.


🛠️ Usage

System Tray

  • Left-Click: Opens the terminal upgrade companion (canonic-update-cli).
  • Right-Click: Displays the detailed status menu, category breakdown, language selector, and trigger options.

Terminal Companion

To manually launch the interactive updater from any terminal:

canonic-update-cli

To trigger an immediate background status cache refresh:

canonic-update-check

☕ Support the Project

If you find Canonic-Update useful for keeping your Ubuntu workstations and servers maintained, please consider supporting ongoing development:

Support on Ko-fi


📌 Project Status & AI Development Statement

Development Notice:
This project is developed with the assistance of advanced AI coding tools, under rigorous manual architecture design, testing, debugging, and continuous maintenance by the author (tuxofvalhalla).

Canonic-Update is currently in Beta (v0.3.3) and is undergoing active refinement towards a stable v1.0.0 milestone. Feedback, issues, and contributions are welcome.


⚖️ Legal & Trademark Disclaimers

  • Trademarks: Ubuntu, Kubuntu, Xubuntu, Lubuntu, Ubuntu MATE, Ubuntu Budgie, and Ubuntu Studio are registered trademarks of Canonical Ltd. Pop!_OS is a trademark of System76, Inc.
  • Affiliation: Canonic-Update is an independent community open-source project and is not affiliated with, sponsored by, or endorsed by Canonical Ltd., System76, Inc., or any Linux distribution vendor.
  • Logo Usage: All operating system and distribution logos included in this package are used strictly for nominative identification and platform compatibility indication (Fair Use).

📄 License

Canonic-Update is licensed under the terms of the GNU General Public License v3.0 (GPL-3.0).
See the LICENSE file for complete details.

About

Lightweight system update tool for Ubuntu and all official flavors. It handles APT, flatpaks and snaps + it handles updates of mainline kernels and signing for secure boot for these intelligently

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Sponsor this project

Packages

Contributors

Languages