otp: add README and use clipcopy

This commit is contained in:
Marc Cornellà
2019-12-27 02:47:26 +01:00
parent 67b5bfaaa3
commit c63fca8581
2 changed files with 27 additions and 14 deletions

View File

@@ -12,32 +12,23 @@ function ot () {
return 1
fi
if [[ `uname` == 'Darwin' ]] then # MacOS X
export COPY_CMD='pbcopy'
elif command -v xsel > /dev/null 2>&1; then # Any Unix with xsel installed
export COPY_CMD='xsel --clipboard --input'
else
COPY_CMD='true'
fi
COPY_CMD='true'
if [[ "x$1" == "x" ]]; then
echo "usage: otpw <profile.name>"
if [[ -z "$1" ]]; then
echo "usage: $0 <profile.name>"
return 1
elif [ ! -f $OTP_HOME/$1.otp.asc ]; then
echo "missing profile $1, you might need to create it first using otp_add_device"
return 1
else
totpkey=$(gpg --decrypt $OTP_HOME/$1.otp.asc)
oathtool --totp --b $totpkey | tee /dev/stderr | `echo $COPY_CMD`
if [[ $COPY_CMD == 'true' ]] then
echo "Note: you might consider installing xsel for clipboard integration"
fi
oathtool --totp --b $totpkey | tee /dev/stderr | clipcopy
fi
}
function otp_add_device () {
if [[ "x$1" == "x" ]] then
echo "usage: otp_add <profile.name>"
echo "usage: $0 <profile.name>"
return 1
else
echo "Enter an email address attached to your GPG private key, then paste the secret configuration key followed by ^D"