diff options
Diffstat (limited to 'share/keyringer/encrypt')
-rwxr-xr-x | share/keyringer/encrypt | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/share/keyringer/encrypt b/share/keyringer/encrypt new file mode 100755 index 0000000..1245715 --- /dev/null +++ b/share/keyringer/encrypt @@ -0,0 +1,35 @@ +#!/bin/bash +# +# Encrypt files to multiple recipients. +# + +# Load functions +LIB="`dirname $0`/../../lib/keyringer/functions" +source $LIB + +# Config +ACTIONS="`dirname $0`" +BASEDIR="$1" +FILE="`keyringer_filename $2`" +KEYDIR="$BASEDIR/keys" +RECIPIENTS="$BASEDIR/config/recipients" +BASENAME="`basename $0`" + +# Setup +if [ -z "$FILE" ]; then + echo "Usage: `basename $0` <basedir> <file>" + exit 1 +elif [ ! -f "$RECIPIENTS" ]; then + echo "No recipient config was found" + exit 1 +fi + +# Encrypt +mkdir -p $KEYDIR/`dirname $FILE` +echo "Type your message and finish your input with EOF (Ctrl-D)." +gpg --armor -e -s $(keyringer_recipients $RECIPIENTS) - > $KEYDIR/$FILE + +# Stage +if [ -d "$BASEDIR/.git" ]; then + keyringer_exec git $KEYDIR add $FILE +fi |