Skip to content

Latest commit

Β 

History

History
49 lines (40 loc) Β· 3.58 KB

README.md

File metadata and controls

49 lines (40 loc) Β· 3.58 KB

rpm-ostree: A true hybrid image/package system

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:

  • Transactional, background image-based (versioned/checksummed) upgrades, using both bootable container images as well as an "ostree native" HTTP model
  • OS rollback without affecting user data (/usr but not /etc, /var) via libostree
  • Client-side package layering (and overrides)
  • Custom base images via rpm-ostree compose image (container) or rpm-ostree compose tree (ostree repo)

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.