Blufin/Aurora/Bazzite and Fedora’s atomic desktops mother projects are doing a lot of care to separate operating system from user applications. Operating system is immutable (or atomic or read-only) and applications are installed in containers.
Atomic desktops have quite a different philosophy from traditional Linux (or Windows if you like). Traditional Linux install packages inside system itself. In general every program you install installed can break the system or vice versa every system upgrade can break one or more applications. This is not very common event, but time to time it does happen.
In atomic desktop each part of the system is in separate container (or sandbox if you prefer it is easier to visualize). Also each flatpak application is in separate OCI container, homebrew is also OCI container and distrobox is OCI container.
Atomic desktop schema is like this:
Order of application installation is described on Bazzite sister project.
1. Flatpak
A lot of GUI applications are packaged as flatpak. The easier way to install is to launch Software (GUI app) and search and install. Very simple just like in any mobile phone.
If you like to use terminal (which is very powerful tool) you can do it with commands:
- search application:
flatpak search
- install application:
flatpak install <application>
If you want to search for applications, the easier way is to search the Flathub.org web site.
Optional read:
I have written some details about flatpaks in Sytsem Flatpak Runtimes EOL forum thread.
2. Ujust
ujust are scripts that system maintainers prepared to easy some command tasks.
To get selection of tasks: ujust --choose
Then you select the task and some task is performed (task can have several commands and logic, but ujust takes care of that).
3. Homebrew
Homebrew is mostly intended to install text based applications that run in terminal. For example you can install text based file manager vifm with: brew install vifm
Homebrew (or Brew for short) is also intended to install server like software like for example PostgreSQL database. Search for app: brew install postgresql
and install app: brew install <application>
4. Distrobox
The lowest level is Podman (or Docker) container. There is abstraction application like Distrobox (that hides all of the complexity of lower level). There is also a tool BoxBuddy that is GUI tool that simplifies distrobox management.
Three layers of container management:
5. Appimage
Is GUI app you can download and is packed in self-contained format.
Now to distrobox… You can use BoxBuddy, that is GUI application. How to use it I have already written pretty long answer in How to install ART forum thread.
Now I will write how to install application from Distrobox layer using Terminal application.
- First thing first. Lets search the web how to install WayDroid. Installation instructions are on official web site. The beauty of Distrobox is, inside container we can run any of the a lot of Linux. For example we are using Blufin (or Aurora,…), but we can install application in Fedora container (or Ubuntu container or any other). From the installation web site we see we can install application on Fedora. Lets do it.
- Open Terminal application.
- Create new distrobox container with name WayDroid:
distrobox create --name WayDroid --image fedora:40
- Lets enter inside a newly created container:
distrobox enter --name WayDroid
- From now on we are inside container that is separated from our Blufin/Aurora system. We get prompt like: “user@WayDroid”. Now inside container install WayDroid (following the step 1 instructions on official web site how to install WayDroid).
sudo dnf install waydroid
and pressing y
key when asked to confirm installation.
- Now, is your turn. I have never used WayDroid. So probably:
waydroid --help
to start.
- Usually application is exported to our Blufin/Aurora computer (in language of Windows, to create a shortcut to WayDroid). It should be something like:
distrobox-export --app waydroid
I don’t know if this is correct command, maybe some switch is also required or something.
- Now exit the container with
exit
command and close terminal with exit
. We don’t need terminal anymore.
- Now we are back to Blufin/Aurora and press Super key (in Windows language this is Windows key) and in search box type in: waydroid.
- Two icons are displayed:
First one is Waydroid application and second one is container itself. Click on first icon and application is WayDroid application is launched from container. This executes command from step 8, if that command is wrong, then no app will be launched.
WARNING: Above may not work at all and “rpm-ostre” is required in this case see @svnskr post above how to do it.
I have never used WayDroid, maybe you can help me (or someone other) how to use WayDroid, so that knowledge spreads…