smd-client(1)

πŸ“¦
version 1.3.0 Β· 2 versions
, in ubuntu jammy

πŸ’– smd-client β€” the manual page, but make it a group chat πŸ’–

okay so bestie, this is smd-client(1) from the Sync Mail Dir (smd) docs, and I'm gonna walk you through it like we're texting at 2am. sit down, hydrate, let's go πŸ“


✨ NAME ✨

smd-client β€” receives diffs and performs actions πŸ’…

like. it gets the diff. it does the thing. that's the whole job. iconic behavior tbh πŸ‘‘


✨ SYNOPSIS ✨

smd-client [-v|--verbose] [-d|--dry-run] [-t|--translator]
      [-l|--local-sync] [--rename-only]
      [--override-db dbf] endpoint mailboxes

so the vibe is: you give it an endpoint and your mailboxes, and all the flags are optional little sprinkles on top 🧚✨


✨ DESCRIPTION ✨

smd-client needs two things, and honestly? same.

  1. a name (endpoint) for the client β€” and no cap, this name must not be used by others 🚫
  2. a list of mailboxes (which are directories, just so we're clear)

and then it just… waits. on stdin. for a mail dir diff 🌸 it's giving patient queen.

when the diff arrives, smd-client attempts to execute those actions β€” and along the way it may ask for stuff by printing data commands on stdout, and it expects the data back on stdin. it's a whole conversation. a dialogue. a little back-and-forth moment fr fr πŸ’¬


✨ OPTIONS ✨

  • -t, --translator β€” specify a program that translates remote mailbox names into local ones. and okay, a fun detail: the translator cat (aka the identity program, the "does nothing" queen) is optimized away ✨ so it just gets skipped entirely. lowkey efficient.
  • -l, --local-sync β€” local synchronization mode 🏠 and listen, no changes is made to the db-file because smd-server takes care of it. so don't you worry about the db, she's handled πŸ’…
  • --rename-only β€” do not synchronize the mailboxes at all πŸ™ˆ instead it generates the script ~/smd-rename.sh so you can uniform the file names in the mailbox. just a lil rename script, sitting in your home dir, waiting for you πŸŽ€
  • *--override-db *dbf β€” use dbf as the db-file. that's it. that's the whole thing. swap the db, slay πŸ¦‹
  • -v, --verbose β€” increase program verbosity (printed on stderr) πŸ“’ louder. chattier. more words. we love a talkative icon.
  • -d, --dry-run β€” do not perform any action for real 😭 just. pretend. rehearse. manifest the sync without actually doing it. main character dress rehearsal energy 🫢

✨ NOTES ✨

heads up bestie β€” smd-client is a low level utility. you should use higher level tools like smd-pull(1) and smd-push(1) πŸ’‘ like yes you can use this directly, but it's the raw ingredient, not the meal. use the fancy ones unless you know exactly why you're here.

✨ SEE ALSO ✨

go read them, they're the rest of the lore πŸŒˆπŸ“š


✨ AUTHOR ✨

Enrico Tassi <gares@fettunta.org> β€” thank you for your service, king πŸ‘‘


and that's the whole page, no notes, no cap, you're basically a smd-client expert now πŸ’œ

this masterpiece dropped on 21 April 2021, and it lives in the Sync Mail Dir (smd) documentation, page smd-client(1). periodt. πŸ’…βœ¨πŸŽ€

πŸ“¦ where this page comes from