#!/bin/sh set -eu usage() { cat <<-'EOF' Usage: check.sh check.sh -h EOF } help() { cat <<-'EOF' Options: -h, --help show this message EOF } for flag in "$@"; do case "$flag" in --) break ;; --help) usage help exit ;; *) ;; esac done while getopts 'h' flag; do case "$flag" in h) usage help exit ;; *) usage >&2 exit 2 ;; esac done shift $((OPTIND - 1)) cd -- "$(dirname -- "$0")" cd -- "$(git rev-parse --show-toplevel)" shellcheck -xe 1090,1091 \ "$XDG_CONFIG_HOME"/bash/rc \ "$XDG_CONFIG_HOME"/bash/vcs-ps1.sh \ "$XDG_CONFIG_HOME"/bash/check.sh \ "$XDG_CONFIG_HOME"/bash/privrc.sh \ "$XDG_CONFIG_HOME"/notmuch/default/hooks/post-new if git grep FIXME -- ":(exclude)$XDG_CONFIG_HOME/bash/check.sh"; then printf 'Leftover FIXME markers\n' >&2 exit 1 fi if ! git diff --quiet || ! git diff --quiet --staged; then printf 'Dirty tilde repository.\n' >&2 exit 1 fi PRIV="$XDG_CONFIG_HOME/../var/lib/private/tilde" if ! git -C "$PRIV" diff --quiet || ! git -C "$PRIV" diff --quiet --staged; then printf 'Dirty private tilde repository.\n' >&2 exit 1 fi