rpm-ostree/src/libpriv
Jonathan Lebon 81c43e81fb PkgChange: add support for layering local RPMs
Allow users to directly specify an RPM file on the command-line. The
"packages_added" array of the PkgChange() method can now contain
absolute paths to RPM files.

Grow the origin format to have a new "requested-local" key. This is
similar to the "requested" key, except that the packages are always
installed from cache. The "requested-local" array values also embed the
SHA-256 of the header we expect.

There is now a new "LocalPackages" line in the status. These packages
are a subset of the "packages" element (which are printed as
"LayeredPackages") and represent the packages that are explicitly marked
for installing from cache.

Interesting design choices/notes:
  - Just as before, even with foo-1.0-1.x86_64 installed from RPM, a
    user can still request "/usr/bin/foo": it will be made dormant. As
    soon as foo stops being explicitly layered from the RPM, it will try
    to fulfill the request by going to the repos. This allows users to
    "pin" a layered package to a certain RPM, and then unpin it.
  - The strings/NEVRAs in "requested" and "requested-local" are strictly
     distinct. This allows us to be able to tell what the user means
     exactly when they do "rpm-ostree uninstall".

Closes: #657
Approved by: cgwalters
2017-03-10 18:35:11 +00:00
..
libsd-locale-util.c status: Import systemd bits to use UTF-8 circle 2016-06-09 19:33:19 +00:00
libsd-locale-util.h status: Import systemd bits to use UTF-8 circle 2016-06-09 19:33:19 +00:00
rpmostree-bwrap.c bwrap: Don't use --unshare-net in nspawn by default 2017-03-10 17:27:56 +00:00
rpmostree-bwrap.h libpriv: Enhance internal bwrap API 2017-01-11 18:39:26 +00:00
rpmostree-core.c core: add support for installing from cache 2017-03-10 18:35:11 +00:00
rpmostree-core.h core: add support for installing from cache 2017-03-10 18:35:11 +00:00
rpmostree-json-parsing.c
rpmostree-json-parsing.h
rpmostree-kernel.c RpmOstreeOrigin: also cache initramfs args 2017-02-27 19:53:19 +00:00
rpmostree-kernel.h RpmOstreeOrigin: also cache initramfs args 2017-02-27 19:53:19 +00:00
rpmostree-origin.c PkgChange: add support for layering local RPMs 2017-03-10 18:35:11 +00:00
rpmostree-origin.h PkgChange: add support for layering local RPMs 2017-03-10 18:35:11 +00:00
rpmostree-output.c output: support printf type usage 2016-05-27 22:18:44 +00:00
rpmostree-output.h output: support printf type usage 2016-05-27 22:18:44 +00:00
rpmostree-passwd-util.c util: drop custom set_prefix_error_from_errno 2017-02-23 20:57:51 +00:00
rpmostree-passwd-util.h passwd_prepare_rpm_layering: account for local entries 2017-01-08 21:05:06 +00:00
rpmostree-postprocess.c core: add support for installing from cache 2017-03-10 18:35:11 +00:00
rpmostree-postprocess.h postprocess: More fd-relative-ification 2016-11-04 14:59:27 +00:00
rpmostree-refsack.c Update for libhif -> libdnf 2016-08-04 01:10:08 +00:00
rpmostree-refsack.h Update for libhif -> libdnf 2016-08-04 01:10:08 +00:00
rpmostree-refts.c libpriv: Add RpmOstreeRefTs and API to create one from a commit 2015-05-23 09:30:57 -04:00
rpmostree-refts.h Update for libhif -> libdnf 2016-08-04 01:10:08 +00:00
rpmostree-rpm-util.c PkgChange: add support for layering local RPMs 2017-03-10 18:35:11 +00:00
rpmostree-rpm-util.h PkgChange: add support for layering local RPMs 2017-03-10 18:35:11 +00:00
rpmostree-script-gperf.gperf scripts: Ignore glibc-headers.prein and vagrant*.prein 2016-06-29 13:53:42 +00:00
rpmostree-scripts.c scripts: Use tmpfs for /var/tmp, not the host's /tmp 2017-02-28 23:37:15 +00:00
rpmostree-scripts.h build: Deal with gperf 3.1 changing to size_t 2017-02-17 18:51:53 +00:00
rpmostree-unpacker.c PkgChange: add support for layering local RPMs 2017-03-10 18:35:11 +00:00
rpmostree-unpacker.h PkgChange: add support for layering local RPMs 2017-03-10 18:35:11 +00:00
rpmostree-util.c PkgChange: add support for layering local RPMs 2017-03-10 18:35:11 +00:00
rpmostree-util.h PkgChange: add support for layering local RPMs 2017-03-10 18:35:11 +00:00