WMANAGER-LOOP(1)

πŸ’– wmanager-loop(1) β€” the group chat manual πŸ’–

okay bestie, sit down, hydrate, because we're talking about wmanager-loop, a lil General Commands Manual situation and honestly? it's giving "infinite loop but make it fashion" πŸ’…


✨ NAME ✨

wmanager-loop β€” loop running window managers chosen with wmanager


πŸŽ€ SYNOPSIS πŸŽ€

wmanager-loop [OPTIONS ...]

πŸ¦‹ DESCRIPTION πŸ¦‹

so like. the wmanager-loop program starts either the window manager you told it about with the WM variable, or the very first window manager listed in ~/.wmanagerrc (or, if there's literally nothing there, an X terminal emulator). then when that thing exits, it runs wmanager(1) to ask the user for the next window manager. and it just… keeps doing that? on loop? until the user picks β€œExit this session” in wmanager(1). periodt, that's the whole bit. πŸ”

also: any options you hand to wmanager-loop get passed straight on to wmanager(1). no secrets, no gatekeeping.

if the WM environment variable is set, wmanager-loop tries to interpret it as a window manager specification, and it checks these in this exact order:

  • a full path to an executable file to run as the window manager;
  • the name of a window manager listed in the /.wmanagerrc file; e.g. β€œfluxbox” would match the following line:
fluxbox=/usr/bin/startfluxbox
  • the program name of a window manager listed in the /.wmanagerrc file; e.g. β€œstartfluxbox” would match the above example.
  • the start of such a program name; e.g. β€œstart” would match the above example.
  • the end of such a program name; e.g. β€œbox” would match the above example.
lowkey important: if WM is set and there is more than one line in ~/.wmanagerrc that matches the specification, wmanager-loop will exit with an error message. not ambiguous, not vibes-based, it just bails. πŸ’€

like we said up top, if no window manager is specified in the WM environment variable or found in the ~/.wmanagerrc file, wmanager-loop attempts to start an X terminal emulator. if the WMTERM environment variable is set, it uses that as the path to the emulator. otherwise it searches the user's path for a program named β€œx-terminal-emulator”, β€œurxvt”, β€œrxvt”, or β€œxterm” β€” in that order β€” and starts the first one it finds, using its full path. and if none of the common terminal emulators on that list shows up? it just runs β€œxterm” and hopes something comes up on the user's display. manifesting, honestly. πŸ™ˆβœ¨


🌸 ENVIRONMENT 🌸

wmanager-loop uses these environment variables, bestie, take notes πŸ“:

  • WM β€” the name, path, or partial path to the first window manager to execute.
  • WMTERM β€” the name of the X terminal emulator to execute if no window manager could be found in the ~/.wmanagerrc file. if it's not specified, wmanager-loop searches the user's path as described above.

🌈 EXAMPLE 🌈

to start using wmanager-loop, create a ~/.wmanagerrc file β€” generally with wmanagerrc-update(1) β€” and add something like the following at the end of your ~/.xsession file:

exec wmanager-loop -geometry +570+585

and that's it, you're slaying. 🫢


πŸ‘‘ SEE ALSO πŸ‘‘

wmanager(1), wmanagerrc-update(1)


πŸ“œ HISTORY πŸ“œ

the wmanager-loop program was written by Tommi Virtanen in 2000 and later modified by Peter Pentchev. this manual page was originally written in perldoc format by Tommi Virtanen in 2000, and converted to mdoc format and updated by Peter Pentchev in 2008. we love a documented glow-up. ⭐


πŸ’œ AUTHORS πŸ’œ

  • Tommi Virtanen ⟨tv@debian.org⟩
  • Peter Pentchev ⟨roam@ringlet.net⟩

and that's a wrap on this Debian edition, dated September 8, 2009 β€” shoutout to the wmanager-loop(1) girlies, ily, go touch grass after you exit your session πŸ’–βœ¨πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from