In this article, we will take a high-level look at what Citadel OS is, how it works, and how it differs from the competition. It’s all in 5 minutes, so we might as well get started!
What you see below is a representation of Citadel’s tech stack. We will explore the different layers one by one.
Citadel will run on almost any Linux distribution, basically anywhere Docker Compose runs. However, the preconfigured installer will use Debian as the base operating system. This is because of Debian’s widespread popularity, the very passionate community that maintains it, and its strong stance in favor of Free and Libre Open Source Software.
Docker Compose is a tool for running multi-container applications on Docker.
A container can be described as a minimal virtual machine that contains all the packages and libraries needed to run. Containers are very popular because they run independently of the OS, are isolated from each other which is good for security, and are easy to manage, update, and modify.
Docker Compose allows developers to manage projects with multiple containers easily.
Nirvati is a lightweight management system for Docker Compose. It allows running various programs as “apps”, which are isolated from each other and can be installed easily. Nirvati will replace the old Citadel Core starting with version 0.3, allowing for more modular and simplified management and paving the way for exciting new features such as
- Full HTTPS experience
- Settings customization
- Integration into one single user interface
- Easy updates as soon as they’re published by the app developers
- Multi-user support
For every single app on the Appstore!
Nirvati is not just the core of Citadel, but also an independent project that can be used as the basis for other applications, such as Waldservr, a new server system optimized for schools. And you can use it too, for whatever you want to build without asking permission, because Nirvati is free as in freedom!
Abstracting the Citadel core into a standalone project like Nirvati allows for greater modularity and performance that Umbrel, for example, does not have despite also being based on Docker Compose.
Preliminary tests indicate that this choice of architecture is very performant and greatly reduces load time.
There is still much work to do, but the results are very promising. If you want to help Citadel, if you find this project valuable, you can give value back!
In ⌛ Time, 🎨 Talent and 🧡 Sats!
Help us share this message with friends and family and consider sending some sats our way on Geyser.
If you are a designer, a shadowy super coder, or someone that wants to beta test the code, here is where you can help 👉 https://gitlab.com/nirvati