Fedora Atomic Workstations in Planning Stages
Container technology has lead to several other areas of development and one of them being an atomic operating system that sandboxes applications and delivers updates in a single image. Red Hat started their Project Atomic to provide applications in a containerized format and produced Atomic Host as the tiny OS on which they'd run. It didn't take long before planners began speaking of doing similar for Fedora and now developers are in the early planning stages of bringing this idea to fruition.
Owen Taylor, of Red Hat's desktop team, posted to the desktop mailing list the other day saying, "The classic mode of updating a Linux system or upgrading it to a new version works pretty well most of the time. But sometimes the local system is outside the bounds of what has been tested, and the upgrade fails." Another problem is the difference between updated systems and fresh installs as well as degraded and non-functional systems after updating. It'd be easier for everybody if system updates could be rolled out as one cohesive image rather than a bunch of pieces.
Users need the ability to install desired software and Taylor et al. think sandboxed applications is the answer. "The combination of rpm-ostree and xdg-app provide the basis for a future version of Fedora Workstation that has a split between an atomically updated unified core operating system, and encapsulated applications installed on top." The goal is fully sandboxed applications completely separate from and jailed from the operating system below. This sounds a lot like containers for the desktop. Developers are the primary target of Fedora, and thus Fedora Atomic, but they want it to work for sysadmins, gamers, and worker bees too.
To quote the wiki page:
The idea of an "Atomic Workstation" is to use the ideas of "Project Atomic" to have a core operating system for a workstation that updates atomically as a whole, and then layer extra software on top of that. This is as opposed to the traditional model, where the operating system is dynamically composed on the end users system out of individual packages.
Some of the advantages are said to be:
* The update is offline, and there is no possibility of the running system being in a mixed state with some applications still using old versions and some using new versions
* The update is reliable and atomic - there is no complicated process of updating files piecemeal that can break in the middle
* The update can be rolled back if need be
* The applications have little ability to break the operation of the underlying system
* Only one upgrade between each set of Fedora versions
* Potentially improved functionality testing because each Fedora Workstation user's system will be more alike
Taylor wrote this is a long-term project and some of the necessary components are "still in progress," so at this point he's just starting the conversation. Paul Frields, of Fedora's engineering team, said in April that he hopes to have a prototype by Fedora 23 and a working option for Fedora 24. Taylor said a test image is possible right now but he wants to figure out "a solid developer story: how we can make Atomic Workstation an even more friendly, flexible and robust way to develop server and desktop software than what we have currently?"