libostree (previously OSTree) is a system for versioning updates of Linux-based operating systems.[1] It can be considered as "Git for operating system binaries". It operates in userspace, and will work on top of any Linux file system. At its core is a Git-like content-addressed object store with branches (or "refs") to track meaningful file system trees within the store.
Repository | github |
---|---|
Written in | C |
Operating system | Linux (Fedora Silverblue, endless OS, and others) |
License | LGPL v2+ |
Website | ostreedev |
Features
editOSTree is closely inspired by Git. It operates on commits which refer to filesystem trees. To refer to different commits while maintaining a user-readable name, OSTree provides "references" (analogous to branches in Git), such as exampleos/buildmain/x86_64-runtime
.
Files provided by commits are by default immutable, done by mounting the filesystem itself as read-only. OSTree allows for two mutable directories for storing user data: /etc
and /var
. It provides a mechanism to allow filesystem trees to add configuration files to /etc
while also allowing system administrators to edit those files in a persistent manner.
OSTree provides bootloader management for hardware deployments. This enables atomic updates, as OSTree can create deployments and atomically insert them into the boot partition. It also allows for systemwide rollback by selecting old deployments during startup.
Usage
editlibostree is used by various Linux operating systems and tools:
- Red Hat In-Vehicle Operating System is a derivative of CentOS Automotive Stream Distribution that uses OSTree
- endless OS through eos-updater.[2]
- Flatpak, used to store applications and runtimes and to provide deduplication.[3]
- Fedora's atomic spins (Silverblue, Kinoite, Budgie Atomic, and Sway Atomic) through rpm-ostree[4]
- Atomic Host
- The GNOME continuous project for continuous delivery of GNOME components.[5]
- Torizon OS embedded Linux uses libostree with the Uptane Frameworks for OS Updates.[6]
References
edit- ^ "ostree documentation".
- ^ eos-updater, Endless OS Foundation, 2023-03-30, retrieved 2023-05-17
- ^ "Under the Hood — Flatpak documentation". docs.flatpak.org. Retrieved 2023-05-17.
- ^ "Fedora Silverblue User Guide". Fedora Docs. Retrieved 2023-05-17.
- ^ "Gnome Continuous". Retrieved 25 January 2018.
- ^ "Torizon OS". Toradex. 11 October 2023.
External links
editThis article incorporates text available under the CC BY 3.0 license.