Colin Walters
50ab2983ab
postprocess: Use O_TMPFILE for dracut, merge reproducible bits
I was planning to do some further changes here, and I really don't like the manual fork/exec stuff on in the --reproducible checks. Our subprocess code should basically be all bwrap. Synchronous code execution while not reading from the pipe is a recipe for deadlocks. What simplifies things a lot is to write to an `O_TMPFILE` fd (or a tempfile on legacy kernels), and slightly extend our bwrap-executing code to support a child setup function, so we can set the tmpfile fd to be stdout. Now that we have a shell script wrapper we inject, it's trivial to reimplement the "detect reproducibility" in shell script there, rather than C. This doesn't matter much for treecompose today, but it will matter more when we're supporting client side initramfs regeneration, since now the dracut container can be fully immutable. Closes: #560 Approved by: jlebon
rpm-ostree Overview
rpm-ostree is a hybrid image/package system. It uses OSTree as a base image format, and supports RPM on both the client and server side using libhif.
For more information, see the online manual: Read The Docs (rpm-ostree)
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.
Manual
For more information, see the online manual: Read The Docs (rpm-ostree)
Description
Languages
C++
58.8%
Rust
18.6%
Shell
13.6%
C
6.6%
M4
0.8%
Other
1.6%