From Fedora Project Wiki
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
= Atomic Workstation =
 
= 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 [https://github.com/openshift/origin/blob/master/docs/cluster_up_down.md oc cluster up].
+
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.  Local server application development happens primarily in [https://github.com/openshift/origin/blob/master/docs/cluster_up_down.md oc cluster up].  We also encourage use of "pet" containers via Docker or related tools.
 +
 
 +
= Current status =
 +
 
 +
See [https://lists.fedoraproject.org/archives/list/desktop@lists.fedoraproject.org/message/JDBGLC2MCXWPHAPULN6PKUKFRE2SS7GT/ this post] for links
 +
to an installer ISO.
  
 
== Advantages ==
 
== Advantages ==
  
 
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 *also* possible to layer RPMs for desktop applications
+
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*.
+
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 them deletes the files underneath the running application and
+
fact that upgrading deletes the files underneath the running application and
often breaks it.
+
often breaks it.  (And we don't want most desktop applications in the base ostree stream,
 +
since it's more for the "base OS" which goes along with a kernel which requires a reboot).
 +
 
 +
One important note: We are focusing here on Flatpak for isolation - we expect to auto-convert
 +
packaged RPMs in Fedora into Flatpak, rather than relying primarily on the "3rd party repository"
 +
model.
  
Moving developer tools into `docker` (or other container tools) makes it a lot easier to parallel install different
+
'''oc cluster up''' allows developers to test server applications locally with ease, and then
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"
+
 
containers in which one runs dnf/yum or other tools.
+
Many developers want random utilities which aren't server apps or desktop apps, such as
 +
'''ansible''' for example.  We encourage running "pet" containers for these where one
 +
uses tools like dnf or pip.  We should have a specialized desktop terminal application that makes it easy to create/manage
 +
these "pet" containers - similar to virt-manager.
  
 
== Use cases ==
 
== Use cases ==

Revision as of 14:08, 25 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. Local server application development happens primarily in oc cluster up. We also encourage use of "pet" containers via Docker or related tools.

Current status

See this post for links to an installer ISO.

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. (And we don't want most desktop applications in the base ostree stream, since it's more for the "base OS" which goes along with a kernel which requires a reboot).

One important note: We are focusing here on Flatpak for isolation - we expect to auto-convert packaged RPMs in Fedora into Flatpak, rather than relying primarily on the "3rd party repository" model.

oc cluster up allows developers to test server applications locally with ease, and then push them to production Kubernetes/OpenShift clusters.

Many developers want random utilities which aren't server apps or desktop apps, such as ansible for example. We encourage running "pet" containers for these where one uses tools like dnf or pip. We should have a specialized desktop terminal application that makes it easy to create/manage these "pet" containers - similar to virt-manager.

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