Rolling distribution

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by 98.201.98.46 (talk) at 16:37, 27 March 2010 (remove duplicate link to sabayon). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

In software development, a rolling release approach refers to a continuously developing software system, as opposed to one with versions that must be reinstalled over the previous versions. It is one of many types of software release life cycles. Rolling releases are typically seen in use by Linux distributions.

A rolling release is typically implemented using small and frequent updates. However, simply having updates does not automatically mean that a piece of software is using a rolling release cycle; to qualify as a rolling release, the philosophy of developers must be to work with one code branch, as opposed to discrete versions. Updates are typically delivered to users using a package manager and a software repository accessed through the internet.

Examples

Gentoo Linux, Arch Linux, Sabayon Linux, and Foresight Linux are examples of true rolling releases. Install media is simply a snapshot of the distribution at the time of the release. Software contained in the repositories is more current than what is contained on the install media and often very recent releases.

Other Linux distributions may maintain a development branch in between releases. These development branches may resemble a rolling release because software in such a branch is continually updated. However, unlike a rolling release, these branches are intended to be the next release, and will be frozen and tested prior to such a release. Mandriva Cooker, openSUSE Factory, Fedora Rawhide, and Debian's testing and unstable branches are examples of this type of development. Running these development branches in a production environment can cause instability and other problems and is not well supported.

sidux is a rolling release Linux distribution based on Debian's unstable development branch (sid). Besides of Debian's unstable repositories sidux uses its own package repositories and tools to help avoid potential breakage otherwise more common when using Debian unstable.

Non-examples: Windows, Mac OS, OpenBSD, and most Linux distributions (including Debian [Linux] "stable") are not rolling releases, because they have significant changes between version numbers (a complete operating system reinstall, or at least a major upgrade, is required). This also results in significant development effort being spent on keeping old versions up to date due to propagating bug fixes back to the newest branch, as opposed to focusing more on the newest development branch.

Focus of effort

It is common to occasionally take snapshots of the rolling release, which can be refined and "frozen" and only maintained for security. This is often impractical since it requires duplication of effort. Typically, defects and characteristics of a particular release are not specifically addressed in a separate/isolated effort (e.g. as patches); instead, they are addressed in the main development effort.

See also