coreos / rpm-ostree

⚛📦 Hybrid image/package system with atomic upgrades and package layering
https://coreos.github.io/rpm-ostree
Other
839 stars 192 forks source link
centos fedora ostree package-manager

rpm-ostree: A true hybrid image/package system

[!IMPORTANT] Currently, development focus has shifted to bootc, dnf, and the ecosystem around those tools. However, rpm-ostree is widely in use today in many upstream projects and downstream products and we will continue to support it for some time with an emphasis on fixing important bugs, especially security-related ones. Some minor enhancements may happen but in general new major features, especially client-side, are unlikely to be prioritized. For more information, see:

rpm-ostree is a hybrid image/package system. It combines libostree as a base image format, and accepts RPM on both the client and server side, sharing code with the dnf project; specifically libdnf. and thus bringing many of the benefits of both together.

🆕 as of release 2022.16 rpm-ostree now also supports ostree native containers.

                         ┌─────────────────────────────────────────┐
                         │                                         │
                         │       rpm-ostree (daemon + CLI)         │
                  ┌──────┤                                         ├─────────┐
                  │      │     status, upgrade, rollback,          │         │
                  │      │     pkg layering, initramfs --enable    │         │
                  │      │                                         │         │
                  │      └─────────────────────────────────────────┘         │
                  │                                                          │
                  │                                                          │
                  │                                                          │
┌─────────────────┴─────────────────────────┐        ┌───────────────────────┴─────────────────┐
│                                           │        │                                         │
│         ostree (image system)             │        │            libdnf (pkg system)          │
│                                           │        │                                         │
│  fetch ostree repos and container images, │        │    ties together libsolv (SAT solver)   │
│  atomic filesystem trees, rollbacks       │        │    with librepo (RPM repo downloads)    │
│                                           │        │                                         │
└───────────────────────────────────────────┘        └─────────────────────────────────────────┘

Features:

Documentation

For more information, see the project documentation or the project documentation website.

License

rpm-ostree includes code licensed under GPLv2+, LGPLv2+, (Apache 2.0 OR MIT). For more information, see LICENSE.