X-Git-Url: https://git.madduck.net/etc/mrsetup.git/blobdiff_plain/da401ce0054a5f01071576b1572fe6954958495e..784f44fe970f02424e323b07f60d00280ed242bf:/mrsetup diff --git a/mrsetup b/mrsetup index ca453ae..7910c00 100755 --- a/mrsetup +++ b/mrsetup @@ -9,34 +9,42 @@ set -eu MY_GIT_SERVER=git.madduck.net MY_GIT_REPOS='~/git' -MY_ACCOUNT_GIT_REPO=$MY_GIT_REPOS/accounts/$(whoami)@$(hostname --fqdn).git +MY_ACCOUNT="$(whoami)@$(hostname --fqdn)" +MY_ACCOUNT_GIT_REPO=${MY_GIT_REPOS}/accounts/${MY_ACCOUNT}.git MY_GIT_URL_BASE=ssh://$MY_GIT_SERVER MY_MR_REPO_URL=$MY_GIT_URL_BASE/$MY_GIT_REPOS/pub/etc/mr.git MY_ACCOUNT_REPO_URL=$MY_GIT_URL_BASE/$MY_ACCOUNT_GIT_REPO -MR_REPO_URL=git://git.kitenet.net/mr +MR_REPO_URL=$MY_GIT_URL_BASE/~/git/pub/code/mr.git MR_CODE=code/mr MR_FGIT=.fgits/mr.git MR=.mr BIN_DIR=.bin +if [ -z "${SSH_AUTH_SOCK:-}" ]; then + echo E: '$SSH_AUTH_SOCK' is not set. >&2 + exit 1 +fi + if [ ! -x "$(command -v git)" ]; then echo E: git is not installed. >&2 - exit 1 + exit 2 fi +cd $HOME + if [ -e .mrconfig ]; then echo E: .mrconfig already exists. >&2 - exit 2 + exit 3 fi if [ -d "$MR_FGIT" ]; then echo E: "$MR_FGIT" already exists. >&2 - exit 3 + exit 4 fi if [ -d ".git" ]; then echo E: .git already exists. >&2 - exit 3 + exit 5 fi if [ -d code/mr ]; then @@ -44,13 +52,14 @@ if [ -d code/mr ]; then echo W: code/mr already exists, let us hope for the best... >&2 else echo E: code/mr already exists. >&2 - exit 4 + exit 6 fi else echo I: cloning mr into ${MR_CODE}... mkdir --parent ${MR_CODE%/*} - git clone $MR_REPO_URL $MR_CODE - mkdir .bin + git clone --no-checkout $MR_REPO_URL $MR_CODE + (cd $MR_CODE && git checkout -b vcsh origin/vcsh) + mkdir --parent $BIN_DIR ln -s ../${MR_CODE}/mr $BIN_DIR/mr echo fi @@ -76,7 +85,7 @@ cp $MR/templ/.mrconfig . echo I: setting up base... $MR_CODE/mr co -if ssh $MY_GIT_SERVER "test -d $MY_ACCOUNT_GIT_REPO"; then +if ssh $MY_GIT_SERVER "test -d $MY_ACCOUNT_GIT_REPO" /dev/tty + +echo I: back from the shell. exit 0