scripts: Improve nomie credentials options
Added option to input nomie api key either directly as an environment variable, or to pass a command (also through env var) to nomie which it will call to get the api key. So, if you have e.g. pass as password manager running, you can just do `NOMIE_API_KEY_CMD="pass show path/to/key/file"` and it will use the returned credentials.
This commit is contained in:
parent
d71e4a19fb
commit
8fd025653a
2 changed files with 40 additions and 4 deletions
1
scripts/.config/sh/env.d/nomie-api-key.sh
Normal file
1
scripts/.config/sh/env.d/nomie-api-key.sh
Normal file
|
@ -0,0 +1 @@
|
|||
export NOMIE_API_KEY_CMD="pass show websites/nomie.app/apikey"
|
|
@ -2,10 +2,45 @@
|
|||
# this script logs a new entry in nomie - https://nomie.app/ - an open source habit tracker and journaling app
|
||||
# It will very simply take the text input and pass it on.
|
||||
|
||||
sendtonomie() {
|
||||
req="{\"note\":\"$*\",\"api_key\":\"$(pass show websites/nomie.app/apikey)\"}"
|
||||
echo "$req"
|
||||
curl -s -H "Content-Type: application/json" --compressed --data "$req" https://nomieapi.com/log
|
||||
getapikey() {
|
||||
if [ -n "$NOMIE_API_KEY_CMD" ]; then
|
||||
# shellcheck disable=2005
|
||||
echo "$($NOMIE_API_KEY_CMD)"
|
||||
elif [ -n "$NOMIE_API_KEY" ]; then
|
||||
echo "$NOMIE_API_KEY"
|
||||
else
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
sendtonomie() {
|
||||
apikey=$(getapikey)
|
||||
if [ "$?" -eq 1 ]; then
|
||||
echo "No api key found."
|
||||
exit 1
|
||||
fi
|
||||
req="{\"note\":\"$*\",\"api_key\":\"$apikey\"}"
|
||||
echo "$req"
|
||||
curl -s -H "Content-Type: application/json" --compressed --data "$req" https://nomieapi.com/log
|
||||
}
|
||||
|
||||
usage() {
|
||||
printf """
|
||||
simple nomie logging script.
|
||||
|
||||
usage: nomie \"note content to upload to nomie with #tags and +mentions\"
|
||||
|
||||
Will upload the content passed in on to nomie, using your api key.
|
||||
Set you api key through the \"NOMIE_API_KEY=<my-api-key-here>\" env var,
|
||||
or set a function to return the api key from \"NOMIE_API_KEY_CMD=<my-cmd>\" which will
|
||||
be used preferentially.
|
||||
"""
|
||||
}
|
||||
|
||||
# print super basic help
|
||||
if [ "$1" = "-h" ] || [ "$1" = "--help" ] || [ "$#" -eq 0 ]; then
|
||||
usage
|
||||
exit 0
|
||||
fi
|
||||
|
||||
sendtonomie "$@"
|
||||
|
|
Loading…
Reference in a new issue