What's with all those numbers on my Ubuntu installation file? Why does my Arch Linux file only have the date after the name? Why do I have to reinstall Fedora every couple years to the newest release?
If you have asked yourself any of these questions, read on to get a basic rundown of fixed release and rolling release operating systems, and figure out which is right for you!
Linux Is…
Very simply, Linux is an operating system kernel; the brain of your operating system. It is a piece of software which handles all the little things you never think about while using a computer. The kernel determines the priority of code being run at any given time, manages which memory each piece of code can access, and determines which piece of hardware can be accessed by which piece of code.
When combined with other free (GNU) software, Linux becomes a full operating system, GNU/Linux. It may be easier to understand if you think of an operating system as a human body:
- You have an internal clock, which tells your body when to wake up. GNU/Linux has a GNU bootloader.
- You have a brain, which tells your arms to move your blankets and your legs to get you out of bed, and in what order to do so. GNU/Linux has the Linux kernel.
- You have the ability to intake information from the outside world subconsciously through your five senses. GNU/Linux has GNU daemons, or background services.
- You have a nervous system, which accepts commands from your brain and transmits them to your muscles so you can perform tasks. GNU/Linux has a GNU Shell, accessed through a command line.
- You have morning and evening routines which get you ready for your day or for bed. GNU/Linux has GNU applications.
When you put all these intricate systems together (and more!), you get an entire human being, or an entire GNU/Linux operating system.
What Is a Fixed Release?
Chances are, you are using a fixed release operating system right now. Think of Ubuntu 15.04 and Ubuntu 16.04. These are two versions of an operating system which supports different hardware and technology, and requires you to install the new version in order to utilize the latest features. During the lifespan of each fixed release, security updates are pushed out if necessary, and major feature updates are packaged together as service packs.
There are many fixed release operating systems besides Ubuntu, such as Fedora 24, Linux Mint 18, and Debian 8. Likewise, Windows 7, 8, and Apple OS X (Mavericks, Yosemite, El Capitan) are fixed releases. Additionally, both Android and iOS are fixed release operating systems, with major releases coming out every year or so.
So, What Is a Rolling Release?
A rolling release is a relatively young concept in the world of personal computing, and offers a model which allows developers to continually update operating system components, while allowing users to benefit from the changes immediately. Instead of releasing major updates to the entire operating system after a scheduled period of time, a rolling release operating system can be changed at the application level, whenever a change is necessary.
There are a couple different rolling release models -- semi-rolling and full rolling -- and the difference is in how and what packages are pushed out to users as they become available. A semi-rolling distribution, such as Chakra Linux and PCLinuxOS, classifies some packages to be upgraded through a fixed release system (usually the base operating system) in order to maintain stability. A full rolling release, such as Gentoo, Arch, OpenSUSE Tumbleweed, and Microsoft Windows 10, pushes out updates to the base operating system and other applications very frequently -- sometimes as often as every few hours.
Benefits and Downfalls
The difference between the two release models presents an interesting comparison of benefits and downfalls. The main benefit of a fixed release operating system is stability, which comes through software age. In order to be updated, the software must remain in the testing phase until the next version of the base operating system is released. This allows the testing team to thoroughly test the software, and fix or report any bugs they find, without having to worry about the package breaking an end user's system. As a a result, the user can be relatively certain that a piece of software made for their system can actually run on their system.
The main downfall to this release model is something we touched on above: the release model itself. With a fixed release, there is a lengthy upgrade or reinstallation process for the end user, which must occur every so often in order to use new features. Additionally, developers must determine whether some updates get included or excluded in the next version of the operating system if they haven't fully tested those features with the newest version.
The main benefit to a rolling release model is the ability for the end user to use the newest features the developer has enabled. For example, one of the newer features of the Linux kernel, introduced with the 4.0 update, was the ability to update the kernel without restarting your computer. In a rolling release distribution, as soon as this update was tested and marked as working by the development team, it could then be pushed out to the user of the distribution, enabling all future updates to the kernel to occur without computer restarts.
With this constantly updating system comes a couple downsides: system stability and increased maintenance. While packages are still tested in a rolling release distribution model, there are only so many combinations of new updates which can be tested against old applications in a short amount of time. No two operating system installations are completely identical, as each tester may have different hardware or software installed on their system, which could lead to software breakages.
And, as software updates are being pushed out on a more frequent basis, the end user must proactively maintain their system, usually by following release notes and comparing new dependencies with those already installed on their system.
Which Release Type Is Right For You?
Alas, dear reader, as much as picking and installing a Linux distribution is a very personal choice, deciding between a fixed release and a rolling release is just as personal a choice. If system stability and the "set it, forget it" mindset is important to you, a fixed release is your bread and butter. If having the newest software and features is important to you, and you don't mind doing some homework before updating or researching a fix to any problems which may arise, a rolling release might suit you very well.
Luckily, most operating systems can be installed in a VirtualBox virtual machine, so you can try out each release model for yourself before you make the decision to install a distro on your computer.
So… which type of release do you use? Do you roll with the punches, or stand firm in your Tiger Stance? Did you hack together a semi-rolling Debian install from the testing repos? Let us know in the comments below!