Initial pre-release

tmux-party: share a tmux session with people on the same UNIX host.
Single-file POSIX shell (party) with a filesystem + tmux server-access
trust model. See README.md.
This commit is contained in:
veg 2026-06-01 10:45:32 +00:00
commit 6be0ac1877
20 changed files with 3869 additions and 0 deletions

29
tests/40-perms.bats Normal file
View file

@ -0,0 +1,29 @@
#!/usr/bin/env bats
load 'helpers'
setup() {
setup_party_sandbox
load_party_lib
}
@test "apply_party_perms_file sets mode g+rw on a regular file" {
require_party_group
f="$PARTY_TMP/f"
: > "$f"
apply_party_perms_file "$f"
m=$(stat -c '%a' "$f" 2>/dev/null || stat -f '%Lp' "$f")
case "$m" in
*6[0-9]) ;; # group has rw
*) echo "mode=$m"; false ;;
esac
g=$(stat -c '%G' "$f" 2>/dev/null || stat -f '%Sg' "$f")
[ "$g" = "$TMUX_PARTY_GROUP" ]
}
@test "validate_socket_dir_parent accepts an owner-only-writable parent" {
# PARTY_SOCKET_DIR is the per-party dir's parent. Created at mode 0700
# by setup_party_sandbox (owner-only, neither group- nor world-writable),
# which validate_socket_dir_parent should accept without complaint.
validate_socket_dir_parent
}