NOTI(1)

πŸ“¦
version 3.9.0 Β· 2 versions
, in nixpkgs unstable

πŸ’… NOTI(1) β€” the Noti Manual, and yes bestie, it monitors a process and triggers a notification ✨

🌸 NAME 🌸

noti β€” monitor a process and trigger a notification. That's the whole gig, and it's iconic. Welcome to the noti(1) page from the Noti Manual, bestie; we're gonna save you from staring at a terminal like it owes you money. πŸ’–

πŸ¦‹ SYNOPSIS πŸ¦‹

The shape of it is literally:

noti [flags] [utility [args...]]

✨ DESCRIPTION ✨

Never sit and wait for some long-running process to finish. Noti can alert you when it’s done. You can receive messages on your computer or phone. No cap, it's giving personal assistant with zero small talk. 🫢

πŸ’… OPTIONS πŸ’…

Okay, options time. Every single one is here, no skipping, no β€œoops I forgot the boring one.” Defaults are real and they matter. 🌈

  • -t <string>, --title <string> β€” set the notification title. Default is the utility name. πŸŽ€
  • -m <string>, --message <string> β€” set the notification message. Default is Done!. Read from stdin with -. πŸ’¬
  • -b, --banner β€” trigger a banner notification. This is enabled by default. To disable this service, set this flag to false. This will be either nsuser, freedesktop, or notifyicon notification, depending on the OS. πŸ””
  • --icon <string> β€” path to notification icon image. On macOS, accepts PNG or JPEG. On Linux, accepts an image path or a freedesktop icon theme name. On Windows, accepts an .ico file path. πŸ–ΌοΈ
  • -s, --speech β€” trigger a speech notification. This will be either say, espeak, or speechsynthesizer notification, depending on the OS. πŸ—£οΈ
  • -c, --bearychat β€” trigger a BearyChat notification. This requires bearychat.incomingHookURI to be set. 🐻
  • –keybase β€” trigger a Keybase notification. This requires keybase.conversation to be set. πŸ”‘
  • -p, --pushbullet β€” trigger a Pushbullet notification. This requires pushbullet.accessToken to be set. πŸ“Œ
  • -o, --pushover β€” trigger a Pushover notification. This requires pushover.apiToken and pushover.userKey to be set. πŸ“¨
  • -u, --pushsafer β€” trigger a Pushsafer notification. This requires pushsafer.key to be set. πŸ”
  • -l, --simplepush β€” trigger a Simplepush notification. This requires simplepush.key to be set. πŸ“
  • -n,--gchat β€” trigger a Google Chat notification. This requires gchat.appurl to be set. πŸ’š
  • -i,--chanify β€” trigger a Chanify notification. This requires chanify.channelURL to be set. πŸ“£
  • -k, --slack β€” trigger a Slack notification. This requires slack.appurl (for Slack apps) or slack.token and slack.channel (for legacy tokens) to be set. πŸ’œ
  • –twilio β€” trigger a Twilio notification. This requires twilio.authToken, twilio.accountSid, twilio.numberFrom and twilio.numberTo to be set. ☎️
  • –ntfy β€” trigger a ntfy notification. This requires ntfy.topic be set. Optionally, ntfy.url can also be set to use a different Ntfy server. For private Ntfy topics, access token authentication can be provided via ntfy.token. 🐝
  • -w , --pwatch β€” monitor a process by PID and trigger a notification when the pid disappears. πŸ‘€
  • -f, --file β€” path to noti.yaml configuration file. πŸ“
  • --verbose β€” enable verbose mode. πŸ”Š
  • -v, --version β€” print noti version and exit. 🏷️
  • -h, --help β€” print noti help and exit. πŸ†˜

🌈 ENVIRONMENT 🌈

These env vars are in the group chat. Every single one, periodt:

  • NOTI_DEFAULT
  • NOTI_BANNER_ICON
  • NOTI_NSUSER_SOUNDNAME
  • NOTI_NSUSER_SOUNDNAMEFAIL
  • NOTI_SAY_VOICE
  • NOTI_ESPEAK_VOICENAME
  • NOTI_SPEECHSYNTHESIZER_VOICE
  • NOTI_BEARYCHAT_INCOMINGHOOKURI
  • NOTI_KEYBASE_CONVERSATION
  • NOTI_KEYBASE_CHANNEL
  • NOTI_KEYBASE_PUBLIC
  • NOTI_KEYBASE_EXPLODINGLIFETIME
  • NOTI_NTFY_TOPIC
  • NOTI_NTFY_URL
  • NOTI_NTFY_TOKEN
  • NOTI_PUSHBULLET_ACCESSTOKEN
  • NOTI_PUSHBULLET_DEVICEIDEN
  • NOTI_PUSHOVER_APITOKEN
  • NOTI_PUSHOVER_USERKEY
  • NOTI_PUSHSAFER_KEY
  • NOTI_SIMPLEPUSH_KEY
  • NOTI_SIMPLEPUSH_EVENT
  • NOTI_SLACK_TOKEN
  • NOTI_SLACK_CHANNEL
  • NOTI_SLACK_USERNAME
  • NOTI_TWILIO_TO
  • NOTI_TWILIO_FROM
  • NOTI_TWILIO_ACCOUNTSID
  • NOTI_TWILIO_AUTHTOKEN

πŸŽ€ FILES πŸŽ€

If not explicitly set with --file, then noti will check the following paths, in the following order. Bestie, order matters. 🫑

  • ./.noti.yaml
  • $XDG_CONFIG_HOME/noti/noti.yaml

πŸ”₯ EXAMPLES πŸ”₯

Display a notification when tar finishes compressing files. Slay.

noti tar -cjf music.tar.bz2 Music/

Add noti after a command, in case you forgot at the beginning. We've all been there. 😭

clang foo.c -Wall -lm -L/usr/X11R6/lib -lX11 -o bizz; noti

If you already started a command, but forgot to use noti, then you can do this to get notified when that process’ PID disappears. Main character problem-solving. πŸ‘‘

noti --pwatch $(pgrep docker-machine)

Receive your message from stdin with -. Very cute, very useful. πŸ“

rsync -az --stats ~/  server:/backups/homedir | noti -t "backup stats" -m -

πŸ’€ REPORTING BUGS πŸ’€

Report bugs on GitHub at https://codeberg.org/roble/noti/issues. Don't suffer in silence, bestie. 🫢

🧚 SEE ALSO 🧚

noti.yaml(5) β€” go read it, iykyk. πŸ¦‹

πŸ‘‘ AUTHORS πŸ‘‘

variadico.


πŸ’– okay bye, bestie β€” this was noti 3.9.0, dated 2018/03/25, from the NOTI(1) manual. Periodt. 🫢

πŸ“¦ where this page comes from