summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2025-04-28 06:53:43 -0700
committerKaz Kylheku <kaz@kylheku.com>2025-04-28 06:53:43 -0700
commitba70e0a9fcc9f7415445da71b15c9844570bf0e7 (patch)
tree75b9ab4f07637ccea5e8bf01d4c500df48ad80bb
parent13ee98d21a868b88928d4bf72078f67a19af9893 (diff)
downloadtxr-ba70e0a9fcc9f7415445da71b15c9844570bf0e7.tar.gz
txr-ba70e0a9fcc9f7415445da71b15c9844570bf0e7.tar.bz2
txr-ba70e0a9fcc9f7415445da71b15c9844570bf0e7.zip
build: config cache: preserve perms.
* config-cache-hook.tl (try-save-current-config, try-restore-current-config): Preserve permissions when copying files, so ./reconfigure remains executable.
-rwxr-xr-xconfig-cache-hook.tl4
1 files changed, 2 insertions, 2 deletions
diff --git a/config-cache-hook.tl b/config-cache-hook.tl
index 73b7e30b..7355c3f6 100755
--- a/config-cache-hook.tl
+++ b/config-cache-hook.tl
@@ -18,13 +18,13 @@
(when [all %files% path-exists-p]
(let ((dir (path-cat %cachedir% sha)))
(ensure-dir dir)
- (copy-files %files% dir))))
+ (copy-files %files% dir t))))
(defun try-restore-new-config (sha)
(let* ((dir (path-cat %cachedir% sha))
(files [map (op path-cat dir) %files%]))
(when [all files path-exists-p]
- (copy-files files ".")
+ (copy-files files "." t)
(put-line `restored cached configuration for @sha`))))
(match-case *args*