## The script
Write the following code to a file, for example `remote-notmuch.sh`.
-There is just one line to that normally needs configuration:
-
- readonly SSH_CONTROL_SOCK='~'/.ssh/master-user@host:22
-
-the options howto are presented after the script.
#!/bin/bash
# http://notmuchmail.org/remoteusage/aboriginal/
set -eu
+ #exec 2>>remote-errors; echo -- >&2; set -x # outcomment for debugging
readonly SSH_CONTROL_SOCK='~'/.ssh/master-user@host:22
readonly SSH_CONTROL_ARGS='-oControlMaster=no -S '$SSH_CONTROL_SOCK
- if ssh $SSH_CONTROL_ARGS 0.1 $notmuch $ARGS 2>>/dev/null
+ if ssh -q $SSH_CONTROL_ARGS 0.1 $notmuch $ARGS
then exit 0
else ev=$?
fi
case $* in
'config get user.primary_email') echo 'nobody@nowhere.invalid'; exit 0 ;;
'config get user.name') echo 'nobody'; exit 0 ;;
+ 'count'*'--batch'*) while read line; do echo 1; done; exit 0 ;;
'count'*) echo 1; exit 0 ;;
'search-tags'*) echo 'errors'; exit 0 ;;
'search'*'--output=tags'*) echo 'errors'; exit 0 ;;
Note that the '~' is inside single quotes for a reason. In this
case shell never expand it to `$HOME` -- ssh does it by not reading
-`$HOME` but checking the real user home directory from `/etc/passewd`.
+`$HOME` but checking the real user home directory from `/etc/passwd`.
For security purposes this is just how it should be.
## Tune
See the section *Configure Emacs on the client computer* in
[[remoteusage|remoteusage]] how to do this. The instructions are the same.
-
-## Fun
-
-Original [BSD Licence](http://en.wikipedia.org/wiki/BSD_licenses)
-is 4-clause license.
-When 3 rd. clause was removed, the new license was not original anymore.
-Similarly, the requirement for this version are the same as in
-[[remoteusage|remoteusage]] page except the 3 rd. requirement
-(password-free login) is not effective here.