-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Here you will find all the information you will need to configure and set up a working system running LithOS.
The most important tool for any LithOS distribution is called system. This tool allows you to install, configure, manage packages, and snapshot or restore your system.
LithOS is built for my own personal needs and desires, and thus has some biased choices. One of them is using Arch Linux as a base. If you are not a fan of Arch Linux or do not feel like dealing with it, then this distribution is not for you. However do take note, while the base is Arch Linux, you will do a lot of things differently from the typical "Arch btw way." For example, the most notable difference is LithOS's package management and install. Package management isn't managed by pacman, but instead through system package, which has different syntax, but the same outcome and uses libalpm under the hood. And system installation is completely managed and automated by configuration files, installed by running system init /dev/someDevice --config systemConfig.yaml or system init diskConfig.yaml --config systemConfig.yaml.
While you will still have to debug if something on your LithOS system breaks, it is made much less detrimental thanks to the revision system that's implemented. If you perform an update and something breaks, or install a package and something breaks, you can just revert to the last working configuration. In addition, each time you install a package or update your system config, your rootfs gets rebuilt from scratch, but your current runtime will also be changed, so you don't have to worry about rebooting in order to see if your changes work. If you are happy with your changes on your current runtime, you can simply system apply them to begin the rebuild process. If you don't, just reboot, and it's like they never happened.
While the preferred method for package installation for applications is a containerized solution like Flatpak, Snap, or AppImage, LithOS allows you to install from the Arch repositories and the AUR, and in addition allows using containers of different distributions (powered by Podman) to install and integrate packages that way. The entry-point for anything containerized is system container.
If anything here doesn't fit to your liking, then this isn't for you. As mentioned before, this distribution was born solely to meet my needs and desires, and isn't tailored for anyone else, however I choose to share this and document it in case anyone wants to use this. However, feature requests are still welcome, though it's not guaranteed that they will be added.