Files
Lorenz Leutgeb c7d71df4ab scripts, build, just: POSIX Compliance
Enforce POSIX shell syntax with ShellCheck using `--shell sh`.
2026-10-30 12:45:40 +01:00

32 lines
877 B
Bash
Executable File

#! /usr/bin/env sh
set -e
if [ "$#" -lt 2 ]; then
printf "usage: %s <rid> <nid>\n" "$(basename "$0")"
exit 1
fi
RAD_HOME=${RAD_HOME:-"$HOME/.radicle"}
# shellcheck disable=SC2001
REPO=$(echo "$1" | sed 's/^rad://')
REMOTE=$2
cd "$RAD_HOME/storage/$REPO"
sigrefs=$(git rev-parse "refs/namespaces/$REMOTE/refs/rad/sigrefs")
signed=$(git show "$sigrefs:refs")
actual=$(git for-each-ref "refs/namespaces/$REMOTE/refs/**" --format="%(objectname) %(refname)")
# Strip namespace prefix.
# shellcheck disable=SC2001
actual=$(echo "$actual" | sed "s@refs/namespaces/$REMOTE/@@")
# Remove `sigrefs` itself.
actual=$(echo "$actual" | grep -v "refs/rad/sigrefs$")
tmp=$(mktemp -d)
trap 'rm -rf "$tmp"' 0
trap 'exit 1' HUP INT TERM
printf '%s\n' "$signed" > "$tmp/signed"
printf '%s\n' "$actual" > "$tmp/actual"
diff --color=always -y --minimal -W 240 "$tmp/signed" "$tmp/actual"