From ce244f01218c6b8628539479f6549bcf7f72bd90 Mon Sep 17 00:00:00 2001 From: Thomas Walker Lynch Date: Fri, 7 Nov 2025 10:35:10 +0000 Subject: [PATCH] permissions after a pull --- permissions.sh | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100755 permissions.sh diff --git a/permissions.sh b/permissions.sh new file mode 100755 index 0000000..d8b2bd5 --- /dev/null +++ b/permissions.sh @@ -0,0 +1,26 @@ +#!/bin/bash +# permissions.sh +# do this after a git clone +# Make incommon/{executable,library} group-readable and non-group-writable, +# preserving existing execute bits (via X). + +set -euo pipefail + +BASE=${1:-incommon} + +if [ ! -d "$BASE" ]; then + echo "Error: $BASE is not a directory" >&2 + exit 1 +fi + +# 1. Let group members enter the top-level incommon directory +chmod g+rx "$BASE" + +# 2. Fix permissions on executable/ and library/ subtrees +for sub in executable library; do + if [ -d "$BASE/$sub" ]; then + chmod -R g+rX,g-w "$BASE/$sub" + else + echo "Note: $BASE/$sub does not exist, skipping" >&2 + fi +done -- 2.20.1