Go to file
Colin Walters f925d9ced4 tests-container: New experimental testing code path
This generates a docker image that contains a cached blob of RPMs, so
it's easy to test compose tree.

It's hacky and ugly, but it's better than nothing.
2016-03-11 08:38:06 -05:00
api-doc build: Use git.mk, make git status clean 2016-03-10 14:36:44 -05:00
buildutil build: Use git.mk, make git status clean 2016-03-10 14:36:44 -05:00
design design/package-layering: New file 2014-06-18 08:48:03 -04:00
docs docs: Start using mkdocs 2016-03-09 11:10:58 -05:00
libglnx@08ae6639e5 app: Use libglnx console API 2016-03-10 19:18:24 -05:00
man man: Document deploy 2015-11-21 10:07:53 -05:00
packaging packaging: Make a yum repo 2016-03-11 08:38:06 -05:00
scripts compose: Add check-passwd/group JSON options, fails compose if uids/gids change 2014-12-18 16:59:33 -05:00
src app: Use libglnx console API 2016-03-10 19:18:24 -05:00
tests build: Use git.mk, make git status clean 2016-03-10 14:36:44 -05:00
tests-container tests-container: New experimental testing code path 2016-03-11 08:38:06 -05:00
.gitignore build: Use git.mk, make git status clean 2016-03-10 14:36:44 -05:00
.gitmodules Start using libglnx 2015-02-15 14:01:13 -05:00
autogen.sh autogen.sh: tweak program checking logic 2015-09-11 10:24:44 -04:00
configure.ac Move gtk-doc into api-doc 2016-03-09 11:20:06 -05:00
COPYING COPYING: Update to latest LGPLv2+ 2014-03-10 16:40:16 -04:00
git.mk build: Use git.mk, make git status clean 2016-03-10 14:36:44 -05:00
Makefile-daemon.am build: Use git.mk, make git status clean 2016-03-10 14:36:44 -05:00
Makefile-decls.am Import some code for using GJS 2014-01-03 17:14:10 -05:00
Makefile-lib-defines.am lib: Add RpmOstreePackage 2015-04-16 13:26:58 -04:00
Makefile-lib.am (cleanup): Move the refsack and root loading code into libpriv 2015-05-20 20:51:42 -04:00
Makefile-libpriv.am Rename rpmostree-hif.[ch] -> core 2016-02-22 14:27:46 -05:00
Makefile-man.am build: Use git.mk, make git status clean 2016-03-10 14:36:44 -05:00
Makefile-rpm-ostree.am Add a container builtin 2016-02-22 14:27:45 -05:00
Makefile-tests.am build: Use git.mk, make git status clean 2016-03-10 14:36:44 -05:00
Makefile.am build: Use git.mk, make git status clean 2016-03-10 14:36:44 -05:00
mkdocs.yml docs: Start using mkdocs 2016-03-09 11:10:58 -05:00
README.md docs: Start using mkdocs 2016-03-09 11:10:58 -05:00
TODO TODO: Update 2014-03-31 16:33:05 -04:00

rpm-ostree Overview

New! See the docs online at Read The Docs (rpm-ostree)


rpm-ostree is a hybrid image/package system. It uses OSTree as an image format, and uses RPM as a component model.

The project aims to bring together a hybrid of image-like upgrade features (reliable replication, atomicity), with package-like flexibility (introspecting trees to find package sets, package layering, partial live updates).

Features:

  • Atomic upgrades and rollback for host system updates
  • A server side tool to consume RPMs and commit them to an OSTree repository
  • A system daemon to consume ostree commits as updates

Projects using rpm-ostree

Project Atomic uses rpm-ostree to provide a minimal host for Docker formatted Linux containers. Replicating a base immutable OS, then using Docker for applications.

Building

Releases are available as GPG signed git tags, and most recent versions support extended validation using git-evtag.

However, in order to build from a git clone, you must update the submodules. If you're packaging and want a tarball, I recommend using a "recursive git archive" script. There are several available online; this code in OSTree is an example.

Once you have a git clone or recursive archive, building is the same as almost every autotools project:

env NOCONFIGURE=1 ./autogen.sh
./configure --prefix=...
make
make install DESTDIR=/path/to/dest

More documentation

New! See the docs online at Read The Docs (OSTree)

Some more information is available on the old wiki page: https://wiki.gnome.org/Projects/OSTree

Contributing

See Contributing.