Announcement

Collapse
No announcement yet.

Updates are not version changes

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Updates are not version changes

    Hello,
    I have just noticed that when updates are available in Discover, it shows the version number of things but the version number doesn't change.


    There are all sort of updates like to gallium, Mesa, Vulkan, various libraries.

    The version number takes the form of

    1.402.30-ubuntu.3.2.0 -> 1.402.30-ubuntu.3.2.1

    so I guess this means that these aren't real updates. What are they changing exactly?

    The only version changes I see is when there is an update to the kernel or to a browser like Firefox, Brave, Chromium, Chrome.
    LibreOffice might get a version update.

    Everything else seems to be always on the same version.
    What are they changing exactly?
    OS=Kubuntu 24.04 CPU=Ryzen 5 3600 3.6 GHz L3 = 32 MB RAM=24 GB
    GPU=AMD RX 6800 16 GB
    HDD=It's not 1 TB. It's 931 GB. Do the math!
    For Ubuntu/Kubuntu, get rid of the Spectre crap mitigations to get full CPU performance.Run lscpu. Notice the lines starting with Vulnerability. Do you have the word "mitigation". That's bad. Edit the file /etc/default/grub. You might find the line that says

    #2
    AI Overview

    Ubuntu structures its package version numbering by extending the standard Debian package version format. Because Ubuntu is built on top of Debian, it uses a multi-part versioning string designed to track changes made by the original software authors, changes made by Debian maintainers, and changes made specifically by Ubuntu engineers. [1, 2]
    A full, complex Ubuntu package version follows this anatomy:
    [epoch:]upstream_version[-debian_revision][ubuntu_revision] [1, 2]




    The Core Components
    • Epoch (epoch
      • What it is: An optional single integer followed by a colon (e.g., 1.
      • Purpose: It acts as a master override to fix mistakes in past package versioning. If an upstream developer completely changes their versioning logic (e.g., switching from 2026.04 to 1.0), adding or incrementing an epoch tells the package manager (apt/dpkg) that the new version is newer, regardless of the numbers that follow. [1]
    • Upstream Version (upstream_version)
      • What it is: The actual version number assigned by the original creators of the software (e.g., 2.4.1 or 5.0).
      • Rule: This is a mandatory component and must start with a digit. [1, 2]
    • Debian Revision (-debian_revision)
      • What it is: A number separated from the upstream version by a hyphen (e.g., -3).
      • Purpose: It tracks how many times the Debian project modified or patched the package packaging without the original software itself changing. [1, 2]
    • Ubuntu Revision (ubuntu_revision)
      • What it is: An additional suffix appended to track Ubuntu-specific modifications (known as the "Ubuntu delta").
      • Format: It usually contains the word ubuntu followed by a counter (e.g., ubuntu1, ubuntu2). [1]



    Real-World Breakdown Examples

    1.4.3-1 Pure Debian Sync. Upstream version is 1.4.3. Debian modified the package once (-1). Ubuntu imported it exactly as-is without any local changes.
    1.4.3-1ubuntu2 Ubuntu Modified Debian Package. Upstream is 1.4.3. Debian modified it once (-1). Ubuntu pulled that Debian package and patched it twice specifically for Ubuntu users (ubuntu2).
    1.4.3-0ubuntu1 Direct Ubuntu Package. Upstream is 1.4.3. The -0 indicates this software was packaged directly for Ubuntu without an intermediate Debian version. It is Ubuntu's 1st revision.
    2:3.1-0ubuntu1 Epoch Override. Upstream is 3.1. The 2: epoch ensures it overrides any older packages that might have had misleadingly "higher" version numbers (like an old 20150101 date stamp).





    Special Post-Release Suffixes (SRUs & Security)

    After an Ubuntu distribution version (like 26.04 LTS) is officially released, packages in the main repository freeze their major versions. When bug fixes or security patches are backported, special suffixes are appended: [1, 2, 3]
    • Stable Release Updates (SRUs): Suffixes like ubuntu1.1 or ubuntu1.2. The second digit increments for post-release bug fixes to ensure smooth upgradability to future OS releases. [1, 2]
    • Security / Backports: Suffixes like ubuntu0.26.04.1. This safely injects a patch targeted specifically for an established Ubuntu release version. [1]
    • Personal Package Archives (PPAs): Suffixes like ~ppa1. The tilde (~) is a unique operator in Debian versioning—it sorts before nothing. This ensures that an official archive package (like 1.0-1) will seamlessly overwrite a user's pre-release or custom PPA package (like 1.0-1~ppa1).

    ​
    Slava Ukraini! 🇺🇦
    Windows no longer obstruct my view.
    Using Kubuntu Linux since March 23, 2007.
    "It is a capital mistake to theorize before one has data." - Sherlock Holmes​

    Comment


      #3
      Yes, many to most updates are *updates*, not new versions of things. These are mostly security or bugfixes to the current version. A static distro like Ubuntu does not always upgrade to new full versions of things, mostly, though there are fast-moving exceptions, like web browsers.

      Even kernels are mainly patched versions of the same kernel.
      The current 7.0.0-31 kernel version is the 31st build of 7.0.0.

      What changes in these updates are mainly patches to the existing package to fix security issues and some bug fixes. Or packaging tweaks to fix something, that sort of thing.

      Versions are kept the same instead of blanket upgrades in order to keep things consistent throughout its lifecycle as much as possible. New versions of things do offer bug fixes, but also can introduce *new* ones, or change workflows, change compatibilities/configurations, even break something else. This not-changing aspect is what some people call "stable" in terms of a distro type.

      In terms of the desktop side of things, this is less relevant these days with flatpak, etc but a core OS that acts the same way for its lifecycle is a valuable aspect for many people.
      Self-built: Asus PRIME B550M-K/Ryzen 5600GT/32Gb/Intel ARC B580 12Gb/KDE neon
      HP Elitedesk 800 G3 Mini: i5-7500T(35w)/32Gb/Kubuntu LTS
      HP Chromebook 14: i5-1135G7/8Gb/512Gb SSD/KDE Linux​

      Comment


        #4
        So from what I understand, these "updates" are really updates even though the first part of the numbers stays the same.
        For example, 1.4.3-1ubuntu2
        The 1.4.3 hasn't changed but there are still significant updates applied. 1.4.3 is called the upstream version
        I suppose that the upstream version is 1.4.4 or maybe has reached 1.5.0 but the Ubuntu people decided to not change that number in their provided file since it would break a bunch of software.

        OS=Kubuntu 24.04 CPU=Ryzen 5 3600 3.6 GHz L3 = 32 MB RAM=24 GB
        GPU=AMD RX 6800 16 GB
        HDD=It's not 1 TB. It's 931 GB. Do the math!
        For Ubuntu/Kubuntu, get rid of the Spectre crap mitigations to get full CPU performance.Run lscpu. Notice the lines starting with Vulnerability. Do you have the word "mitigation". That's bad. Edit the file /etc/default/grub. You might find the line that says

        Comment

        Users Viewing This Topic

        Collapse

        There are 0 users viewing this topic.

        Working...
        X