wuzzah(1)
π wuzzah β like, the manual, but make it cute
okay bestie, so this is the manual page for wuzzah, section 1 of the manual, and honestly? it's giving β¨friendship surveillanceβ¨ in the most wholesome way possible. no cap.
πΈ NAME πΈ
wuzzah β keep an eye out for friends on a local system π«Ά
π SYNOPSIS π
wuzzah [OPTIONS...]
π¦ DESCRIPTION π¦
so wuzzah is literally just a program that... sits around π
. that's the whole job. it scans the utmpx entries and watches for the exact moment your friends log in and log out. main character energy, but make it parasocial.
by default, when you invoke it, wuzzah goes looking for the file ${HOME}/.wuzzah and loads the list of buddies chilling inside it β those are separated by newlines, one bestie per line β and then it just sits and watches. very demure. very mindful.
and if there's no file found, and you didn't specify some other readable file either (peep the OPTIONS section, babes), then wuzzah will try to just watch for whomever the current uid maps to. and if even that fails? it just quits. π like okay, dramatic, we get it.
β¨ OPTIONS β¨
-h,--helpβ gives you an informative usage summary. though ngl, it's nothing you don't already see right here in this very page... π-a,--all-usersβ watches for all users on the system. periodt. everyone.-c,--exec-cmd=CMDβ executesCMDupon a login. β οΈ NOTE: this is done with a call tosystem(2), so you can do things like piping and whatever else you can do withsh -c. it's giving powerful, bestie.-f,--buddy-file=FILEβ useFILEas the buddyfile. naturallyFILEmust be readable, and it consists of usernames, one to a line. optionally, those usernames can be followed by a colon, and then a wuzzah command-line to override wuzzah's behavior for that specific user π-F,--no-buddyfileβ tellswuzzahto not bother loading any config files. we're going in raw, no notes π-i,--interval=NUMβ sleepNUMseconds between each polling π΄-m,--message=STRINGβ useSTRINGas a message template to greet logged-in buddies. check the FORMATS section for the deets β¨-n,--no-newlineβ don't end the messages with newlines (it normally does that by default, lowkey)-o,--process-onceβ scan the login records once, then exit. one and done, no lingering πͺ-p,--process-currentβ by defaultwuzzahdoesn't message users who were already logged in when it started up. this option overrides that behavior and messages them anyways. (only useful with the-w/-coptions, fyi)-q,--silentβ don't message buddies when they log in. that's the default btw π€«-s,--status-message=STRINGβ useSTRINGas a template for displaying the status of people logging in and out. see FORMATS for more info π-u,--users=LISTβ adds every user inLIST(a space/comma/colon separated list of users) to the buddy list π«-v,--versionβ the current version and copyright. iconique.-w,--write-buddiesβ turns on messaging of buddies as they log in. β οΈ NOTE: this can get quite annoying rather quickly. tune in soon for a less annoying solution π
π« FORMATS π«
message templates can be defined as normal character strings, interspersed with special format characters. those format characters consist of a %, followed by a character, which defines situation-specific data. the current list of these characters is as follows:
aβ the alert character ('\a')bβ the name of the buddy who has logged in/out πdβ the date, currently inHH:MM:SSformat πhandHβ the remote hostname or IP address (respectively) of your buddy's login πlβ the line in/out on which the buddy is logged (typically, something like/dev/pts/9or/dev/ttyS0) πmβ whether or not you have just messaged your buddy (really only useful for the-soption) βοΈnβ an embedded newline characteroβ your buddy's online status ("logged on"or"logged off") π’π΄uβ your own username, as can best be determined by the program πͺ
π EXAMPLES π
a simple invocation, bestie:
username@machine$ wuzzah
(13:45:39) foo logged in on :0 (not messaging).
(13:45:39) bar logged in on pts/11 (not messaging).
Message from username@machine on pts/11 at 14:00 ...
(wuzzah) username says: "shoutout to my homie foo."
EOF
an example with a little more user customization β¨:
username@machine$ wuzzah --message="hey, %b, it's %u. nice to see you at %d!"
and when foo logs in, foo will get a message like so:
Message from username@machine on pts/11 at 14:00 ...
hey, foo, it's username. nice to see you at (14:00:00)!
EOF
π FILES π
$HOME/.wuzzahβ the default file containing the list of users to watch π
π BUGS π
don't know of any, but reports (and patches too) are always welcome. feel free to send them to the author π«Ά not me being bug-free and thriving, but okay.
π AUTHOR π
sean finney <seanius@seanius.net>
and that's the whole vibe check, bestie π this little masterpiece of a manual page is wuzzah(1), brought to you by the one and only sean finney, and it was dated Sun Nov 17 02:41:45 EST 2002. slay, honestly. periodt πβ¨
π¦ where this page comes from
- debian bookworm: wuzzah 0.53-3.1 Β· GPL-2.0-or-later
- ubuntu jammy: wuzzah 0.53-3.1 Β· GPL-2.0-or-later
- ubuntu noble: wuzzah 0.53-3.1 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms