Fedora Lazurite is an immutable desktop operating system. It aims to be extremely stable and reliable. based on fedora stable release. It also aims to be an excellent platform for developers and for those using container-focused workflows. Name inspired by the forum: https://discussion.fedoraproject.org/t/introducing-fedora-silverblue-xfce-lxqt-i3-wm/30077
Fedora Lazurite is a variant of the Fedora LXQt Spin. It looks, feels and behaves like a regular desktop operating system, provides a lightweight, well-integrated LXQt desktop environment, and the experience is similar to what you find with using a standard Fedora LXQt Spin. However, unlike other operating systems, Fedora Lazurite is immutable. This means that every installation is identical to every other installation of the same version. The operating system that is on disk is exactly the same from one machine to the next, and it never changes as it is used.
Fedora Lazurite’s immutable design is intended to make it more stable, less prone to bugs, and easier to test and develop. Finally, Fedora Lazurite’s immutable design also makes it an excellent platform for containerized applications as well as container-based software development. In each case, applications (apps) and containers are kept separate from the host system, improving stability and reliability. Fedora Lazurite’s core technologies have some other helpful features. OS updates are fast and there’s no waiting around for them to install: just reboot as normal to start using the next version. With Fedora Lazurite, it is also possible to roll back to the previous version of the operating system, if something goes wrong. Added packages for system customization:
- kvantum
- plasma-systemsettings
- kwin-x11 ( add to autorun /usr/bin/kwin_x11 --replace )
- kwin-wayland
As Lazurite is not yet an official Fedora edition, there is not a dedicated installer for it for now. To get started, install Silverblue https://docs.fedoraproject.org/en-US/fedora-silverblue/installation/ and switch to Lazurite with the following commands
- Add the temporary unofficial Lazurite remote
sudo ostree remote add lazurite https://lazurite.guzhavin.com/repo --no-gpg-verify
- Optional, only if you want to keep Silverblue available
sudo ostree admin pin 0
- Switch to Lazurite
sudo rpm-ostree rebase lazurite:fedora/39/x86_64/lazurite
- Reboot
sudo systemctl reboot
- To update the system
rpm-ostree update
- To update Flatpaks
flatpak update
- Update
rpm-ostree update
- Optional, only if you want to keep Lazurite available
sudo ostree admin pin 0
- Rebase fedora 39 lazurite
sudo rpm-ostree rebase lazurite:fedora/39/x86_64/lazurite
- Reboot
sudo systemctl reboot
- To update the system
rpm-ostree update
- To update Flatpaks
flatpak update
- Clone the config
git clone https://github.com/GuzhavinAleksey/fedora-lazurite.git && cd fedora-lazurite
- Prepare directories
mkdir -p repo cache
ostree --repo=repo init --mode=archive
- Build (compose)
sudo rpm-ostree compose tree --unified-core --repo=repo --cachedir=cache fedora-lazurite.yaml
- Update summary file
ostree summary --repo=repo --update
- Testing Instructions to test the resulting build:
First, serve the ostree repo using an HTTP server. You can use any static file server. For example using <https://github.com/TheWaWaR/simple-http-server>:
@@ -108,63 +52,38 @@ Instructions to test the resulting build:
simple-http-server --index --ip 192.168.122.1 --port 8000
- Then, on an already installed Lazurite system:
- Add the temporary unofficial Lazurite remote
sudo ostree remote add lazurite_local http://<IP_ADDRESS>/repo --no-gpg-verify
- Optional, only if you want to keep Lazurite available
sudo ostree admin pin 0
- Switch to Lazurite
sudo rpm-ostree rebase lazurite_local:fedora/39/x86_64/lazurite
- Reboot
sudo systemctl reboot
- To update the system
rpm-ostree update
- To update Flatpaks
flatpak update
rpm-ostree manifests used to build Fedora Lazurite, Kinoite https://pagure.io/workstation-ostree-config
- To remove the pinned deployment use following command (2 corresponds to the entry position in rpm-ostree status):
sudo ostree admin pin --unpin 2
- How to revert
rpm-ostree rollback
- If you have rpm-fusion layered on your Lazurite,Kinoite,Silverblue installation, you should do the following before rebase
rpm-ostree update --uninstall rpmfusion-free-release --uninstall rpmfusion-nonfree-release --install rpmfusion-free-release --install rpmfusion-nonfree-release
- Example of fixing a package update error ffmpeg
rpm-ostree override remove libavcodec-free libavfilter-free libavformat-free libavutil-free libpostproc-free libswresample-free libswscale-free --install ffmpeg
- lazurite:fedora/39/x86_64/lazurite
- lazurite:fedora/38/x86_64/lazurite
- lazurite:fedora/37/x86_64/lazurite
All the work is done https://github.com/travier thanks to him, I will take care of the support of Fedora Silverblue with the LXQt desktop
Distributed under the MIT License. See LICENSE
for more information.
Project Link: https://github.com/GuzhavinAleksey/fedora-lazurite Author Link: https://github.com/GuzhavinAleksey