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
|
# 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.
|
# It will very simply take the text input and pass it on.
|
||||||
|
|
||||||
sendtonomie() {
|
getapikey() {
|
||||||
req="{\"note\":\"$*\",\"api_key\":\"$(pass show websites/nomie.app/apikey)\"}"
|
if [ -n "$NOMIE_API_KEY_CMD" ]; then
|
||||||
echo "$req"
|
# shellcheck disable=2005
|
||||||
curl -s -H "Content-Type: application/json" --compressed --data "$req" https://nomieapi.com/log
|
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 "$@"
|
sendtonomie "$@"
|
||||||
|
|
Loading…
Reference in a new issue