wmiir(1)

πŸ“¦ version 0-unstable-2023-09, in nixos 26.05, nixpkgs unstable

πŸ’… wmiir(1) β€” the wmii 9P filesystem client, bestie edition ✨

okay so picture this: wmiir is literally the little client that talks to wmii's virtual filesystem, and it's about to be your new best friend. this is the wmiir(1) page from the General Commands Manual, and yes we're getting into all of it, no skipping 🫢


🌸 NAME 🌸

wmiir β€” the wmii 9P filesystem client. that's her. that's the whole vibe.


✨ SYNOPSIS ✨

wmiir [-a <address>] [-b] {create | ls [-dlp] | read | remove | write}
<file>

wmiir [-a <address>] [-b] xwrite <file> <data> ...

wmiir -v

πŸ¦‹ DESCRIPTION πŸ¦‹

wmiir is a simple 9P filesystem client that ships with wmii, and by default it connects straight to wmii's virtual filesystem β€” like, that's its home base πŸ’–. you'll see it used most often to query wmii and to issue commands to it, both from the command line and from its sh-based configuration scripts. it's giving "quietly running everything behind the scenes" energy, honestly iconic πŸ‘‘

here's the important bit though: since the default encoding of 9P filesystems is UTF-8, wmiir assumes that all data read and written is text data, and translates to or from your locale character encoding as necessary. so if you're working with non-text data in a non-UTF-8 locale, you should specify the -b flag to disable this behavior. no cap, that one matters πŸ™ˆ


πŸŽ€ ARGUMENTS πŸŽ€

  • -a β€” the address at which to connect to wmii.
  • -b β€” with the -b flag, data that you intend to read or write is treated as binary data. (that's your "i am not doing text today" flag 🫢)

πŸ’… COMMANDS πŸ’…

the following commands deal with 9P filesystems. periodt.

  • create <file> β€” creates a new file or directory in the filesystem. permissions and file type are inferred by wmii. the contents of the standard input are written to the new file. stdin goes in, file comes out, slay ✨
  • ls [-dlp] <path> β€” lists the contents of <path>.

flags, bestie:

  • -d β€” don't list the contents of directories.
  • -l β€” long output. for each file, list its permissions, owner, group, size (bytes), mtime, and name.
  • -p β€” print the full path to each file.
  • read <file> β€” reads the entire contents of a file from the filesystem. blocks until interrupted or EOF is received β€” so yeah, it will just sit there vibing until you say stop 😭

synonyms: cat

  • remove <path> β€” removes <path> from the filesystem.

synonyms: rm

  • write <file> β€” writes the contents of the standard input to <file>.
  • xwrite <file> <data> ... β€” writes each argument after <file> to the latter. multi-arg energy, we love to see it πŸ’œ

additionally, wmiir provides the following utility commands relevant to scripting wmii:

  • namespace β€” prints the current wmii namespace directory, usually equivalent to /tmp/ns.$USER.${DISPLAY%.0}, but possibly different depending on the value of $NAMESPACE and $WMII_NAMESPACE.

synonyms: ns

  • setsid [-0 <argv0>] [-f] <command> β€” executes the given command after setting the session id (see setsid(2)). if -0 is given, the command is run with the given value as argv[0]. for instance, to run sh as a login shell, one might run:
wmiir setsid -0 -sh sh

if -f is given, wmiir will fork into the background before executing the command. background queen behavior 🌈

  • proglist [--] <directory> ... β€” lists all executable commands in the given directories.

🌼 ENVIRONMENT 🌼

  • $WMII_ADDRESS β€” the address at which to connect to wmii.
  • $NAMESPACE β€” the namespace directory to use if no address is provided.

⭐ SEE ALSO ⭐


ngl, the manpage doesn't spell out an exit status section, so don't come for me β€” everything above is everything there is πŸ’–

and that's the whole page, bestie πŸŽ€ this one comes from wmii-, dated Oct, 2009, and it's wmiir(1) β€” go forth and talk to your filesystem, you absolute main character πŸ‘‘πŸ’…

πŸ“¦ where this page comes from