Go to file
Colin Walters 125c482b1d Switch to using libhif as a git submodule
So I was trying to hack on my host's copy of rpm-ostree inside a pet
docker container, but ran into a conflict with libhif since dnf uses
it.  I think we basically need to *always* build the bundled path,
rather than what I'm doing with CAHC and FADC where it's built as a
regular RPM.

It's not really sustainable right now for us to have both bundled and
not-bundled build paths - and we need to support co-installation with
dnf.

Another major issue is that we want to version lock with libhif -
right now our CI and both CAHC/FADC track libhif master, but that
means everything breaks if libhif breaks and we don't immediately
port.

git submodules solve all of these problems - the same as we're doing
with libglnx.

libglnx is *designed* for use as a git submodule, where as libhif
needs to support being both bundled and not-bundled.  So we end up
with some hacks on our side, but I think it's all not too bad.  I've
marked build rules with `# bundled libhif` so we know where to find
them later when libhif is stable.

Closes: #357
Approved by: jlebon
2016-06-30 14:27:55 +00: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 Links for more information 2016-06-26 21:18:58 +00:00
libglnx@afe3c3a861 core: Dedup hardlink/tempfile code 2016-06-01 15:15:11 +00:00
libhif@07618db1c2 Switch to using libhif as a git submodule 2016-06-30 14:27:55 +00:00
man man page: add pkg-add and pkg-delete 2016-06-03 19:13:13 +00:00
packaging build: Update .gitignore 2016-03-26 14:22:41 +00:00
scripts compose: Add check-passwd/group JSON options, fails compose if uids/gids change 2014-12-18 16:59:33 -05:00
src core: Fix up more nevra leaks 2016-06-29 15:17:18 +00:00
tests test-basic.sh: fix jq filter for new json output 2016-06-29 19:17:38 +00:00
tests-container tests-container: New experimental testing code path 2016-03-11 08:38:06 -05:00
vagrant vagrant: use new 'booted' key to get current csum 2016-06-29 19:17:38 +00:00
.gitmodules Switch to using libhif as a git submodule 2016-06-30 14:27:55 +00:00
.travis.yml Add a stub travis file to enable Homu 2016-03-15 19:34:19 +00:00
autogen.sh autogen.sh: tweak program checking logic 2015-09-11 10:24:44 -04:00
configure.ac Switch to using libhif as a git submodule 2016-06-30 14:27:55 +00: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
HACKING.md Switch to using libhif as a git submodule 2016-06-30 14:27:55 +00:00
LICENSE Add a LICENSE symlink 2016-04-28 13:09:22 +00:00
Makefile-daemon.am Switch to using libhif as a git submodule 2016-06-30 14:27:55 +00:00
Makefile-decls.am Switch to using libhif as a git submodule 2016-06-30 14:27:55 +00:00
Makefile-hif.am Switch to using libhif as a git submodule 2016-06-30 14:27:55 +00:00
Makefile-lib-defines.am lib: Add RpmOstreePackage 2015-04-16 13:26:58 -04:00
Makefile-lib.am Switch to using libhif as a git submodule 2016-06-30 14:27:55 +00:00
Makefile-libpriv.am Switch to using libhif as a git submodule 2016-06-30 14:27:55 +00:00
Makefile-man.am build: Use git.mk, make git status clean 2016-03-10 14:36:44 -05:00
Makefile-rpm-ostree.am Switch to using libhif as a git submodule 2016-06-30 14:27:55 +00:00
Makefile-tests.am hacking: add make vmoverlay for faster hacking 2016-06-29 19:17:38 +00:00
Makefile.am Switch to using libhif as a git submodule 2016-06-30 14:27:55 +00:00
mkdocs.yml docs: Start using mkdocs 2016-03-09 11:10:58 -05:00
README.md Switch to using libhif as a git submodule 2016-06-30 14:27:55 +00:00
TODO package layering: major rework 2016-05-27 22:18:44 +00:00
Vagrantfile hacking: add make vmoverlay for faster hacking 2016-06-29 19:17:38 +00: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.

Using rpm-ostree to build OS images/trees

See Compose Server.

Hacking

See Hacking.

Contributing

See Contributing.