diff options
author | Jelle van der Waa <jelle@archlinux.org> | 2022-09-26 23:51:20 +0200 |
---|---|---|
committer | Jelle van der Waa <jelle@archlinux.org> | 2022-09-26 23:55:25 +0200 |
commit | 7646c38d153ffdfbca2134f1d1ea524b7d07ca77 (patch) | |
tree | 0aac270fa95573b3f5db455207cbd546af0bddee | |
parent | 0f93067221f32ea42e0f7903ba162c17e86702a6 (diff) | |
download | mm-common-7646c38d153ffdfbca2134f1d1ea524b7d07ca77.tar.gz |
util/meson_aux: make tarball reproducible
Set the owner/gid of a tarball to make the output tarball reproducible.
Signed-off-by: Jelle van der Waa <jelle@archlinux.org>
-rwxr-xr-x | util/meson_aux/skeletonmm-tarball.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/util/meson_aux/skeletonmm-tarball.py b/util/meson_aux/skeletonmm-tarball.py index db9e650..138184c 100755 --- a/util/meson_aux/skeletonmm-tarball.py +++ b/util/meson_aux/skeletonmm-tarball.py @@ -39,10 +39,16 @@ elif output_file.endswith('.gz'): else: mode = 'w' +def reset(tarinfo): + tarinfo.uid = tarinfo.gid = 0 + tarinfo.uname = tarinfo.gname = "root" + return tarinfo + + with tarfile.open(output_file, mode=mode) as tar_file: os.chdir(source_dir) # Input filenames are relative to source_dir. for file in sys.argv[3:]: - tar_file.add(file) + tar_file.add(file, filter=reset) # Errors raise exceptions. If an exception is raised, Meson+ninja will notice # that the command failed, despite exit(0). sys.exit(0) |