7f3c5288d4
Closes: #302 Approved by: cgwalters |
||
---|---|---|
api-doc | ||
buildutil | ||
design | ||
docs | ||
libglnx@afe3c3a861 | ||
man | ||
packaging | ||
scripts | ||
src | ||
tests | ||
tests-container | ||
.gitmodules | ||
.travis.yml | ||
autogen.sh | ||
configure.ac | ||
COPYING | ||
git.mk | ||
LICENSE | ||
Makefile-daemon.am | ||
Makefile-decls.am | ||
Makefile-lib-defines.am | ||
Makefile-lib.am | ||
Makefile-libpriv.am | ||
Makefile-man.am | ||
Makefile-rpm-ostree.am | ||
Makefile-tests.am | ||
Makefile.am | ||
mkdocs.yml | ||
README.md | ||
TODO | ||
Vagrantfile |
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.
Using rpm-ostree to build OS images/trees
See Compose Server.
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, the next step is to install the build dependencies. At the moment, rpm-ostree has a hard requirement on a bleeding edge version of libhif. It also requires a few other libraries like librepo.
Once you have the dependencies, building is the same as every autotools project:
env NOCONFIGURE=1 ./autogen.sh
./configure --prefix=/usr --libdir=/usr/lib64 --sysconfdir=/etc
make
At this point you can run some of the unit tests with make check
.
For more information on this, see CONTRIBUTING.md
.
More documentation
New! See the docs online at Read The Docs (rpm-ostree)
Contributing
See Contributing.