CHOOSEWM(1)

πŸ’–βœ¨ CHOOSEWM βœ¨πŸ’–

okay bestie, so this is a page from the General Commands Manual, section 1, and it's all about choosewm β€” the lil cutie that lets you pick which window manager you're gonna run. let's get into it 🫢


🌸 NAME 🌸

choosewm β€” select a window manager to be used. that's it, that's the vibe. πŸ’…


πŸŽ€ SYNOPSIS πŸŽ€

choosewm [-f] [-p] [-t]
choosewm [-t] -c

πŸ¦‹ DESCRIPTION πŸ¦‹

so like, choosewm pops up a window β€” an actual lil window, main character energy β€” and lets the user choose a window manager to start. πŸͺŸβœ¨

by default it shows everything registered as a window manager at the Debian menu system, but no cap, it lets global and local configuration change that data. so you can absolutely customize the menu, bestie. πŸ’…


πŸ”₯ OPTIONS πŸ”₯

  • -c, --config β€” let the user change the default. besides telling choosewm to not start the chosen window manager, this mostly changes the text of some buttons and labels. it's giving ✨customization✨
  • -f, --force β€” show the selection window unconditionally. like, no matter what, we're asking. periodt.
  • -p, --print β€” do not start the window manager, just print it to stdout. for the people who wanna do it themselves, respect. πŸ™Œ
  • -t, --text β€” do not ask by opening an X11 window, ask on the terminal instead. needs a terminal as stdin. this is activated by default with -c and DISPLAY not set. terminal girlies, this one's for you πŸ–₯οΈπŸ’–

🌈 CONFIG FILES 🌈

okay so here's the order of operations, bestie. after reading /var/lib/choosewm/windowmanagers β€” and treating anything before an equal (=) sign in a line as a name and everything after that as the window manager path β€” choosewm checks /etc/X11/choosewm/config and after that, by default, .choosewm/config in the user's $HOME-directory. πŸ“‚βœ¨

lines containing only spaces, or starting with a #, are ignored (ghosted, blocked, not invited πŸ’€). every other line may contain one of the following commands:

πŸ’œ add: name=path

add an additional window manager to the list. name will be shown in the list, path will be started.

this option is only useful to add something that should be only added to this list. if you installed a window manager by hand, please consider to register it in the Debian menu instead. that way all potent enough window managers will be able to offer switching to that window manager by menu. πŸ‘‘

πŸ’œ remove: path

do not list the window manager with path in the list to choose from. bye bye πŸ‘‹

πŸ’œ default: defaultwindowmanagerpath

use the window manager defaultwindowmanagerpath as default, when no last selection of the window manager is available.

πŸ’œ userconf: filename

read the user's config from $(HOME)/filename. if filename is -, no user config is read.

default is .choosewm/config

πŸ’œ dontaskfile: filename

create the file $(HOME)/filename, if the user selected to not be asked about the window manager, and do not ask if this file is present. (unless -f is command line argument.)

default is .choosewm/dontask

πŸ’œ lastdecisionfile: filename

read the last decision from the file $(HOME)/filename, and save the decision of the user there.

default is .choosewm/lastwm

πŸ’œ inalias: oldold=newpath

if the last decision is oldpath, change it to newpath.

πŸ’œ askalias: oldold=newpath

if the last decision is oldpath, change it to newpath and force showing of the selection window.

πŸ’œ outalias: path=output

if the user has chosen path as window manager, write instead output to the file as new last decision.

πŸ’œ sTAG: text

are used to set strings to be shown to the user in labels, buttons or headers. the CONFIGTAG variants are used with -c. 🏷️

the following are the currently definied Tags and their default values:

  • sCONFIGHEADER: Choose default Window Manager
  • sHEADER: Choose Window Manager
  • sCONFIGWELCOME: Please choose the default window manager and whether to reask at start time.
  • sWELCOME: Welcome, please select a Window manager to use.
  • sCONFIGASK: _Ask when starting
  • sASK: _Ask again at every login
  • sCONFIGSELECT: _Select
  • sSELECT: _Start
  • sCONFIGCANCEL: _Cancel
  • sCANCEL: _Log out

⭐ ENVIRONMENT VARIABLES ⭐

  • HOME β€” the current home directory of the current user. 🏠
  • DEFAULTWINDOWMANAGER β€” if no default is specified in the config files nor by the user's last choice, the content of this environment variable is tried before the path /etc/alternatives/x-window-manager is pointing to is tried.

πŸ“ FILES πŸ“

  • /etc/X11/choosewm/config β€” global config file read.
  • /var/lib/choosewm/windowmanagers β€” default system window manager file.
  • /etc/alternatives/x-window-manager β€” default link to compute a default.
  • $(HOME)/.choosewm/config β€” default user config file.
  • $(HOME)/.choosewm/lastwm β€” default file to store the users default.
  • $(HOME)/.choosewm/dontask β€” default file to signal not asking when existant.

πŸ’€ SEE ALSO πŸ’€

update-menus(1), xsession(1).


πŸ‘‘ AUTHOR πŸ‘‘

choosewm was written by Bernhard R. Link <brlink@debian.org>. 🫢

this manual page was written by Bernhard R. Link.


and that's the whole thing bestie, no notes, ate and left no crumbs ✨ this was the choosewm(1) page, dated 2009-06-11 β€” iconic behavior from 2009, fr fr. go pick your window manager, you got this πŸ’–πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from