1#! @shell@ 2# shellcheck shell=bash 3 4set -eu -o pipefail +o posix 5shopt -s nullglob 6 7if (( "${NIX_DEBUG:-0}" >= 7 )); then 8 set -x 9fi 10 11source @signingUtils@ 12 13extraAfter=() 14extraBefore=() 15params=("$@") 16 17input= 18 19pprev= 20prev= 21for p in \ 22 ${extraBefore+"${extraBefore[@]}"} \ 23 ${params+"${params[@]}"} \ 24 ${extraAfter+"${extraAfter[@]}"} 25do 26 if [ "$pprev" != "-change" ] && [[ "$prev" != -* ]] && [[ "$p" != -* ]]; then 27 input="$p" 28 fi 29 pprev="$prev" 30 prev="$p" 31done 32 33# Optionally print debug info. 34if (( "${NIX_DEBUG:-0}" >= 1 )); then 35 # Old bash workaround, see above. 36 echo "extra flags before to @prog@:" >&2 37 printf " %q\n" ${extraBefore+"${extraBefore[@]}"} >&2 38 echo "original flags to @prog@:" >&2 39 printf " %q\n" ${params+"${params[@]}"} >&2 40 echo "extra flags after to @prog@:" >&2 41 printf " %q\n" ${extraAfter+"${extraAfter[@]}"} >&2 42fi 43 44@prog@ \ 45 ${extraBefore+"${extraBefore[@]}"} \ 46 ${params+"${params[@]}"} \ 47 ${extraAfter+"${extraAfter[@]}"} 48 49sign "$input"