No edit summary |
No edit summary |
||
Line 6: | Line 6: | ||
The use of rpm-ostree for the core OS brings fully atomic upgrades. Because rpm-ostree is | The use of rpm-ostree for the core OS brings fully atomic upgrades. Because rpm-ostree is | ||
a hybrid image/package system, it's | a hybrid image/package system, it's also possible to layer RPMs for desktop applications | ||
which aren't yet Flatpaks, and "OS extensions" such as | which aren't yet Flatpaks, and "OS extensions" such as ''powerline'' and ''ykclient''. | ||
Moving desktop applications into Flatpak brings stronger isolation, and solves | Moving desktop applications into Flatpak brings stronger isolation, and solves | ||
very longstanding issues with using yum/dnf for desktop applications, such as the | very longstanding issues with using yum/dnf for desktop applications, such as the | ||
fact that upgrading | fact that upgrading deletes the files underneath the running application and | ||
often breaks it. | often breaks it. | ||
Moving developer tools into | Moving developer tools into ''docker'' (or other container tools) makes it a lot easier to parallel install different | ||
versions without affecting the core desktop, or applications. Taking this a step further to | versions without affecting the core desktop, or applications. Taking this a step further to | ||
'''oc cluster up''' allows developers to test server applications locally with ease, and then | |||
push them to production Kubernetes/OpenShift clusters. | push them to production Kubernetes/OpenShift clusters. | ||
We should have a specialized desktop terminal application that makes it easy to create/manage "pet" | We should have a specialized desktop terminal application that makes it easy to create/manage "pet" | ||
containers in which one runs dnf/yum or other tools. | containers in which one runs dnf/yum or other tools. | ||
== Use cases == | == Use cases == |
Revision as of 16:30, 16 February 2017
Atomic Workstation
The idea of an "Atomic Workstation" is to use the ideas of "Project Atomic" to have a core operating system for a desktop/workstation that updates atomically as a whole. Desktop applications are Flatpaks, and developer tools run in containers (OCI/Docker). We should also encourage use of oc cluster up.
Advantages
The use of rpm-ostree for the core OS brings fully atomic upgrades. Because rpm-ostree is a hybrid image/package system, it's also possible to layer RPMs for desktop applications which aren't yet Flatpaks, and "OS extensions" such as powerline and ykclient.
Moving desktop applications into Flatpak brings stronger isolation, and solves very longstanding issues with using yum/dnf for desktop applications, such as the fact that upgrading deletes the files underneath the running application and often breaks it.
Moving developer tools into docker (or other container tools) makes it a lot easier to parallel install different versions without affecting the core desktop, or applications. Taking this a step further to oc cluster up allows developers to test server applications locally with ease, and then push them to production Kubernetes/OpenShift clusters. We should have a specialized desktop terminal application that makes it easy to create/manage "pet" containers in which one runs dnf/yum or other tools.
Use cases
Pretty much anything that the normal Workstation is used for. The primary target of the Workstation is different varieties of developer, but the Workstation is also supposed to work for other users such as sysadmins, people who want to play games, or people who only want to use productivity applications.
Work Items
Basics
- An ostree repo/branch for Fedora Workstation, constructed using rpm-ostree; this should be an regular output of the Fedora releng infrastructure
- GNOME Software support for rpm-ostree upgrades
- This will basically replace the "System updates" line in the updates list. Need to figure out where to get metadata
- Better support for using Docker/OCI containers as "pet shells"
- Automatically convert RPM packages into flatpak