From d4105585db3cf3d90f30b4fb10cedadfc4546f7c Mon Sep 17 00:00:00 2001 From: Jiahao XU Date: Thu, 23 Jun 2022 22:50:30 +1000 Subject: [PATCH] Fix `atomic_install`: Copy permissions of src Signed-off-by: Jiahao XU --- src/helpers.rs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/helpers.rs b/src/helpers.rs index a13574c0..361dc60e 100644 --- a/src/helpers.rs +++ b/src/helpers.rs @@ -211,6 +211,15 @@ pub fn atomic_install(src: &Path, dst: &Path) -> io::Result<()> { ); io::copy(&mut src_file, tempfile.as_file_mut())?; + debug!("Retrieving permissions of '{}'", src.display()); + let permissions = src_file.metadata()?.permissions(); + + debug!( + "Setting permissions of '{}' to '{permissions:#?}'", + tempfile.path().display() + ); + tempfile.as_file().set_permissions(permissions)?; + debug!( "Persisting '{}' to '{}'", tempfile.path().display(),