-
- Downloads
pressure-vessel: Add code to parse and apply a mtree(5) manifest
This can be used to create directories, symlinks and zero-byte files,
create files as a clone (hard-link or copy) of files in a reference
directory, assert that files exist, set executable/non-executable
permissions, and set files' modification times.
When cloning files from a reference directory, the default is to use
the same filename as the destination, but that can be overridden
(for example to deal with inconvenient/non-Windows-friendly filenames).
This is also actually slightly faster than pv_cheap_tree_copy(),
presumably because the manifest is contiguous on-disk and the
directories are not necessarily.
Setting directories' modification times is implemented, but probably
won't work in practice, because any files we create in the directory
will alter its mtime.
Signed-off-by:
Simon McVittie <smcv@collabora.com>
parent
658ed7ce
No related branches found
No related tags found
Showing
- pressure-vessel/meson.build 5 additions, 2 deletionspressure-vessel/meson.build
- pressure-vessel/mtree.c 560 additions, 0 deletionspressure-vessel/mtree.c
- pressure-vessel/mtree.h 85 additions, 0 deletionspressure-vessel/mtree.h
- tests/pressure-vessel/meson.build 2 additions, 0 deletionstests/pressure-vessel/meson.build
- tests/pressure-vessel/mtree-apply.c 91 additions, 0 deletionstests/pressure-vessel/mtree-apply.c
- tests/pressure-vessel/mtree-apply.py 293 additions, 0 deletionstests/pressure-vessel/mtree-apply.py
- tests/pressure-vessel/utils.c 122 additions, 0 deletionstests/pressure-vessel/utils.c
Loading
Please register or sign in to comment