Rolling or fixed release? Tumbleweed, Leap, Fedora, Debian
Pick a distribution by how it updates, not by its wallpaper, and know how long it gets security fixes.
Part 1 of 12 in Linux basics for self-hosters. Last updated
In short: A rolling release (openSUSE Tumbleweed, Arch, Debian unstable) ships new versions all the time; a fixed release (openSUSE Leap, Debian stable, Ubuntu LTS, Fedora) freezes versions and only ships fixes until the next release. For a home server that should run for months without attention, pick a fixed release with a long support window. For a laptop that wants new hardware support and new software, a rolling release is fine. Choose by release cycle first, package manager second, desktop last.
What is the difference?
Every distribution takes software from upstream projects and packages it. The difference is when new versions reach you.
- Rolling release: there are no big version jumps. New kernels, desktops and services arrive as soon as they pass the distribution's tests, a few times a week. You never "upgrade to the next version" because you are always on it.
- Fixed release (also called point or standard release): the distribution freezes versions at release time. Afterwards you only get security and bug fixes, until you move to the next release on a date you pick.
Neither is better. A rolling release trades predictability for freshness; a fixed release trades freshness for predictability. The question is which of the two your machine needs.
The main distributions compared
| Distribution | Model | New release | Fixes per release | Package manager |
|---|---|---|---|---|
| openSUSE Tumbleweed | Rolling | Continuous snapshots | Always the latest snapshot | zypper |
| openSUSE Leap | Fixed | Minor release about once a year | Until some months after the next minor release | zypper |
| Fedora | Fixed, short | About every 6 months | About 13 months | dnf |
| Debian stable | Fixed | About every 2 years | About 3 years, then Debian LTS to about 5 years | apt |
| Debian testing and unstable | Rolling | Continuous | No security support promise | apt |
| Ubuntu LTS | Fixed | Every 2 years in April | 5 years standard support | apt |
| Arch Linux | Rolling | Continuous | Always the latest package | pacman |
Support windows change; check the source before you install: openSUSE lifetime, Fedora life cycle, Debian LTS and the Ubuntu release cycle.
What the model means in practice: the same programs, looked up on the same day on three distributions. Tumbleweed ships the newest podman, Fedora 44 is one major version behind, and Debian 12 (now oldstable) still offers the version it froze at in 2023.
# openSUSE Tumbleweed (rolling)
$ rpm -q podman bash systemd
podman-6.0.2-1.1.x86_64
bash-5.3.15-8.2.x86_64
systemd-261.2-1.2.x86_64
# Fedora 44 (fixed, short)
$ dnf -q repoquery --latest-limit 1 --qf '%{name}-%{version}-%{release}\n' podman systemd bash
bash-5.3.9-3.fc44
podman-5.8.7-1.fc44
systemd-259.9-1.fc44
# Debian 12 (fixed, long)
$ apt-cache policy podman | head -3
podman:
Installed: (none)
Candidate: 4.3.1+ds1-8+deb12u1+b3 Real output on openSUSE Tumbleweed, Fedora 44 and Debian 12, 2026-09-28; user and host names and addresses redacted.
The package manager follows the family: openSUSE and Fedora both use RPM packages but a different front end (zypper and dnf), Debian and Ubuntu share apt. The zypper, dnf and apt cheat sheet puts the commands side by side.
Which one for a home server?
A home server has one job: keep running while you are busy with something else. That points to a fixed release with a long support window: openSUSE Leap, Debian stable or Ubuntu LTS. Updates are small, nothing changes its configuration format overnight, and you plan the big upgrade once every year or two, on a quiet evening, with a backup.
Fixed does not mean "never update". Security fixes still arrive every week, and you should
install them. Each family has a way to do that on a schedule: zypper on a systemd timer,
unattended-upgrades on Debian and Ubuntu, dnf-automatic on Fedora.
If you run your services as podman containers, the containers update on their own schedule
anyway, so the host only needs the base system to stay patched.
Fedora sits in between: fixed, but with a new release every six months and roughly 13 months of fixes. That is a lot of upgrades for a machine in a cupboard. It suits a desktop better than a server you want to forget about.
Rolling on the laptop, safely
On a laptop, new kernels mean new hardware support and new desktops mean fixes you actually notice, so a rolling release makes sense. openSUSE Tumbleweed only publishes a snapshot after automated testing, and its default btrfs setup takes a snapshot before and after every zypper run. If an update breaks something, pick an older snapshot in the boot menu, check that it works, and make it permanent:
sudo snapper list # numbered snapshots, with the zypper run that made them
sudo snapper rollback # after booting a working read-only snapshot from the menu
sudo reboot
The upgrade command on Tumbleweed is sudo zypper dup, not zypper up.
The difference matters enough that it gets its own section in the
package cheat sheet.
Which release am I running?
Every current distribution describes itself in /etc/os-release:
cat /etc/os-release # NAME, VERSION_ID and PRETTY_NAME
uname -r # the kernel version, which is not the distribution version
A rolling release has no version number, so Tumbleweed puts the snapshot date in
VERSION_ID. A fixed release names its version and codename:
$ grep -E '^(NAME|VERSION|VERSION_ID|ID|ID_LIKE)=' /etc/os-release
NAME="openSUSE Tumbleweed"
ID="opensuse-tumbleweed"
ID_LIKE="opensuse suse"
VERSION_ID="20260904"
$ grep -E '^(NAME|VERSION|VERSION_ID|ID|VERSION_CODENAME)=' /etc/os-release
NAME="Debian GNU/Linux"
VERSION_ID="12"
VERSION="12 (bookworm)"
VERSION_CODENAME=bookworm
ID=debian Real output on openSUSE Tumbleweed and Debian 12, 2026-09-28; user and host names and addresses redacted.
Compare the result with the lifetime pages above. A release past its end of life still boots, still serves your files and still looks perfectly healthy. It just stopped getting security fixes, which is the one thing you cannot see from the outside. Not sure what a command prints or does? Paste it in the shell command explainer.
Common mistakes
Running zypper up on Tumbleweed
zypper up only installs newer versions of packages you already have. It does not
remove packages that were dropped, follow renames or resolve the changes a new snapshot
needs, so the system slowly drifts away from any tested state. On Tumbleweed always use
sudo zypper dup.
Adding repositories from a different release
A repository built for Tumbleweed does not belong on Leap, and a Debian 12 repository does not belong on Debian 13. Mixing them pulls in libraries the rest of the system was not built for. Prefer the official repositories, then Flatpak for desktop apps and containers for services.
Forgetting the server is on an old release
Put the end-of-life date of your server's release in your calendar the day you install it, with a reminder three months earlier. Upgrading on a planned Saturday is much nicer than upgrading because something broke.
Frequently asked questions
Is openSUSE a rolling release?
openSUSE is two distributions. Tumbleweed is a rolling release: every update brings the latest tested snapshot. Leap is a fixed release with a minor version about once a year and only fixes in between. Both use zypper and the same tools, but Tumbleweed upgrades with zypper dup and Leap with zypper up or zypper patch.
Is Debian a rolling release?
Debian stable is a fixed release: a new major version roughly every two years, then only security and bug fixes. Only the testing and unstable (sid) branches move continuously, and Debian does not recommend them for servers.
Is a rolling release safe for a server?
It can be, but it asks for attention: every update can bring a new major version of a service or the kernel, so you should read what changes and reboot often. A server you want to forget about is easier on a fixed release such as openSUSE Leap, Debian stable or Ubuntu LTS.
How do I see which Linux version I am running?
Run cat /etc/os-release. The NAME and VERSION_ID lines show the distribution and release, for example openSUSE Leap 16.0 or Debian 13. uname -r shows the kernel version, which is a different thing.