Skip to content

pgsamila/rpm-ostree

 
 

Repository files navigation

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.

About

Store RPMs in OSTree repository, and atomically upgrade from commits

Resources

License

Unknown, Unknown licenses found

Licenses found

Unknown
LICENSE
Unknown
COPYING

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 90.6%
  • Shell 5.3%
  • Makefile 3.0%
  • M4 0.6%
  • JavaScript 0.2%
  • Python 0.2%
  • Ruby 0.1%