Go to file
Jonathan Lebon db775f43ec Default to sqlite rpmdb backend on f34
There won't be any support for writing to the bdb backend in f34, so
e.g. pkglayering won't work (and obviously even composes wouldn't work
once the buildroot moves to f34).

Instead of requiring the whole world to add an `rpmdb` key in their
manifests, let's just add a compile flag for it, and tweak the spec file
to use this flag on f34.
2020-12-21 19:01:48 -05:00
.github Move bindgen into tooling/, add dependabot 2020-12-08 16:32:24 -05:00
api-doc rust/treefile: Support dash convention for all options 2019-03-02 19:20:21 +00:00
buildutil buildutils: Add libglnx.m4 to .gitignore 2018-04-05 15:26:46 +00:00
ci msrv: Bump to Rust 1.48.0 2020-12-15 16:17:44 +00:00
completion Add support for bash completion 2019-03-01 21:36:39 +00:00
design Initial renaming pass of "jigdo" to "rojig" 2018-02-26 15:32:50 +00:00
docs Default to sqlite rpmdb backend on f34 2020-12-21 19:01:48 -05:00
experiments-and-demos/skopeo2ostree experiments-and-demos: New subdir with skopeo2ostree Dockerfile 2018-01-11 14:07:17 +00:00
libdnf@2ee2a47e19 build(deps): bump libdnf from 0aa50cc to 2ee2a47 2020-12-21 09:41:53 +00:00
libglnx@900caea698 build(deps): bump libglnx from a8b4418 to 900caea 2020-12-07 10:06:37 -05:00
man Add new ex initramfs-etc command 2020-10-30 00:48:54 +01:00
packaging Default to sqlite rpmdb backend on f34 2020-12-21 19:01:48 -05:00
rust Default to sqlite rpmdb backend on f34 2020-12-21 19:01:48 -05:00
scripts Remove unused build cruft (Vagrantfile, old Dockerfile etc) 2020-12-10 21:29:19 -05:00
src Port rpmostree-rojig-assembler to C++ 2020-12-21 16:03:57 -05:00
tests daemon: Record the agent ID in the journal 2020-12-16 13:55:11 +00:00
tooling build(deps): bump cbindgen from 0.15.0 to 0.16.0 in /tooling 2020-12-21 10:14:08 +00:00
vagrant vagrant: Add header noting coreos-assembler 2019-05-13 19:50:58 +00:00
.cci.jenkinsfile msrv: Bump to Rust 1.48.0 2020-12-15 16:17:44 +00:00
.dir-locals.el .dir-locals.el: Global Emacs style settings 2017-01-12 16:09:16 +00:00
.editorconfig tree: add vimrc and editorconfig 2017-10-02 14:36:44 +00:00
.gitmodules Rebase to latest libdnf 2019-03-19 14:29:15 +00:00
.vimrc tree: add vimrc and editorconfig 2017-10-02 14:36:44 +00:00
autogen.sh build-sys: Fix use of libglnx configure bits 2017-12-15 16:32:39 +00:00
cargo-vendor-config Move the main Rust infra (i.e. Cargo.toml) to the toplevel 2020-12-09 17:42:35 -05:00
Cargo.lock Move the main Rust infra (i.e. Cargo.toml) to the toplevel 2020-12-09 17:42:35 -05:00
Cargo.toml Default to sqlite rpmdb backend on f34 2020-12-21 19:01:48 -05:00
cbindgen.toml Move the main Rust infra (i.e. Cargo.toml) to the toplevel 2020-12-09 17:42:35 -05:00
configure.ac Default to sqlite rpmdb backend on f34 2020-12-21 19:01:48 -05:00
CONTRIBUTING.md docs: fix ostree and CONTRIBUTING.md links 2016-07-12 15:46:53 +00:00
COPYING.GPL Clarify license situation to include GPLv2, relicense Rust code 2019-09-05 20:49:18 +00:00
COPYING.LGPL Clarify license situation to include GPLv2, relicense Rust code 2019-09-05 20:49:18 +00:00
git.mk build: Use git.mk, make git status clean 2016-03-10 14:36:44 -05:00
HACKING.md docs: Import Hacking page 2020-10-01 12:01:25 -04:00
LICENSE Clarify license situation to include GPLv2, relicense Rust code 2019-09-05 20:49:18 +00:00
Makefile-bash.am build: Hook up bash completions 2019-03-07 00:47:39 +00:00
Makefile-daemon.am Port rpmostreed-transaction-livefs to C++ 2020-12-21 08:58:14 +00:00
Makefile-decls.am Convert some code to compile in C++ mode 2020-12-01 22:07:49 +01:00
Makefile-extra.inc ci: Verify rustfmt 2018-11-21 21:16:03 +00:00
Makefile-lib-defines.am lib: Add version macros and version checking function 2017-07-21 20:35:26 +00:00
Makefile-lib.am lib: Drop dependencies on internal librpmostree-priv 2020-12-20 15:23:53 +00:00
Makefile-libdnf.am Rebase to latest libdnf 2019-03-19 14:29:15 +00:00
Makefile-libpriv.am Port rpmostree-rojig-assembler to C++ 2020-12-21 16:03:57 -05:00
Makefile-man.am man: Add rpm-ostreed-automatic page 2018-03-07 22:54:33 +00:00
Makefile-rpm-ostree.am Default to sqlite rpmdb backend on f34 2020-12-21 19:01:48 -05:00
Makefile-tests.am tests: Disable C unit tests 2020-12-20 15:23:53 +00:00
Makefile.am Convert some code to compile in C++ mode 2020-12-01 22:07:49 +01:00
mkdocs.yml docs: Start using mkdocs 2016-03-09 11:10:58 -05:00
OWNERS OWNERS: extend/reorder approvers section 2020-10-30 19:42:31 +01:00
README.md README.md: Keep it short and sweet 2020-10-01 14:29:37 -04:00
RELEASE.md docs: Import Release page 2020-10-01 12:01:25 -04:00

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.

                         +-----------------------------------------+
                         |                                         |
                         |       rpm-ostree (daemon + CLI)         |
                  +------>                                         <---------+
                  |      |     status, upgrade, rollback,          |         |
                  |      |     pkg layering, initramfs --enable    |         |
                  |      |                                         |         |
                  |      +-----------------------------------------+         |
                  |                                                          |
                  |                                                          |
                  |                                                          |
+-----------------|-------------------------+        +-----------------------|-----------------+
|                                           |        |                                         |
|         libostree (image system)          |        |            libdnf (pkg system)          |
|                                           |        |                                         |
|   C API, hardlink fs trees, system repo,  |        |    ties together libsolv (SAT solver)   |
|   commits, atomic bootloader swap         |        |    with librepo (RPM repo downloads)    |
|                                           |        |                                         |
+-------------------------------------------+        +-----------------------------------------+

Features:

  • Transactional, background image-based (versioned/checksummed) upgrades
  • OS rollback without affecting user data (/usr but not /etc, /var) via libostree
  • Client-side package layering (and overrides)
  • Easily make your own: rpm-ostree compose tree and CoreOS Assembler

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.