NOTE: Within the coming weeks this repository will no longer be active in favor of the offical ostree sway spin coming soon.
https://fedoraproject.org/w/index.php?title=Changes/Fedora_Sway_Spin
The goal of this repo is to build a Fedora desktop variant of Sway the Wayland WM.
This would be a stop-gap until sway has an offical variant like Silverblue(Gnome)/Kiniote(KDE)
Minimal opinions are expressed, but this is not intended for an everyday user. This is mostly from the work of https://github.com/martinpitt/ostree-pitti-workstation with some more sane defaults to help an everyday user. Everyone has opinions!
I pair this well with toolbox & boombox-arch
To test local composes you can do something like:
podman run --rm -it --privileged \
--security-opt seccomp=unconfined --security-opt label=disable \
-v $PWD:/host:z -w /host registry.fedoraproject.org/fedora-minimal:latest bash -c \
'microdnf install -y rpm-ostree selinux-policy selinux-policy-targeted policycoreutils && ./compose.sh'
To use sway with rpm-ostree:
rpm-ostree rebase --experimental ostree-unverified-registry:ghcr.io/anthr76/sway-desktop:36
For some background, see:
- https://fedoraproject.org/wiki/Workstation/AtomicWorkstation
- https://fedoraproject.org/wiki/Changes/WorkstationOstree
(Note also this repo obsoletes https://pagure.io/atomic-ws)
The goal of the system is to be a workstation, using rpm-ostree for the base OS, and a combination of Docker and Flatpak containers, as well as virtualization tools such as Vagrant.
This project is actively maintained and is ready for use by sophisticated and interested users, but not ready for widespread promotion.
See some [https://lists.fedoraproject.org/archives/list/desktop@lists.fedoraproject.org/thread/J6BJS7Z4NKNOQUZWGYXZZIEKYMWBBSUY/](discussion about the first release).
See the Silverblue documentation at https://docs.fedoraproject.org/en-US/fedora-silverblue/installation-guide/. There's also a guide for installing inside an existing system: https://docs.fedoraproject.org/en-US/fedora-silverblue/installation-dual-boot/.
One of the first things you should do use is use a container runtime of your
choice to manage one or more "pet" containers. This is where you will use
yum/dnf
to install utilities.
With docker
for example, you can use the -v /srv:/srv
command line option so
these containers can share content with your host (such as git repositories).
Note that if you want to share content between multiple Docker containers and
the host (e.g. your desktop session), you should execute (once):
sudo chcon -R -h -t container_file_t /var/srv
Next, let's try flatpak. Before you do: There's a known flatpak issue on AtomicWS - run this workaround, which you only need to do once. After that, try flatpak.
If you are a developer for server applications, try oc cluster up to create a local OpenShift v3 cluster.
Finally, try out rpm-ostree install
to layer additional packages directly on
the host. This is needed for "host extensions" - privileged software that
doesn't make sense to live in a container. For example, rpm-ostree install powerline
to use that software for the shell prompts of the host. Another
good example is rpm-ostree install vagrant-libvirt
to use Vagrant
to manage VMs.
- GNOME Software support for both rpm-ostree/flatpak and possibly docker
- automated tests that run on this content