#!/bin/sh -efu

. girar-sh-functions

usage()
{
	echo >&2 "$PROG: $*"
	echo >&2 "usage: $PROG <path to directory> <config> [<value>]"
	exit 1
}

[ "$#" -ge 2 ] ||
	usage 'Not enough arguments.'
[ "$#" -le 3 ] ||
	usage 'Too many arguments.'

mode=get
[ "$#" -eq 3 ] &&
	mode=set

cd "$HOME"

dir="$(validate_packages_dir "$1")"; shift
dir="$(add_git_suffix "$dir")"

cfg="$(validate_config_name "$1")"; shift

[ -d "$dir" ] ||
	fatal "$dir: directory not available"

cd "$dir"
if [ "$mode" == "set" ]; then
	val="$(validate_config_value "$1")"
	GIT_DIR=. git config $cfg $val
else
	GIT_DIR=. git config $cfg
fi
