dwm is a dynamic window manager for X. It manages windows in tiled, monocle and floating layouts.
This guide covers:
- Creating a user account that can run as sudo
- Installing dependencies for the suckless tools and installing firefox
- Installing from source dwm (dynamic window manager), dmenu (dynamic menu), st (simple terminal)
- Configuring the new profile to run dwm at login.
Creating a new user account
After the install of alpine you get the root account. We want to use a new user account that is not root but will have sudo permissions.
Where myname is the username you want to use.
Install sudo so we can add myname to sudoers.
Edit the sudoers file by running:
Add your user account so you can have sudoers. Make your change below root. The relevant section should look like this:
Switch to the new account
Run the following command to install X.org.
Configuring the community repositories
We need to do this so we can install Firefox. Edit the file with this command:
Uncomment the community line by removing the # then save the file and exit. It should look something like this:
Next let the package manager know we made this change:
The command to install the dependencies:
Go to this directory
this is where we will download the source code.
Once downloaded go to the dwm directory
To install, run:
Next, leave this directory
so we can install dmenu:
Finally, leave this directory
so we can install st:
Setting up your profile
Go to your home directory:
Where myname is your username.
Add this line:
Save the file and exit vi.
Next, create .profile.:
Add this line:
Exit to log out of the system or reboot and when you log in dwm will run. Press alt+p to launch dmenu and start typing firefox. Press enter to run firefox, it will load in tile 9.
- "dwm is only a single binary, and its source code is intended to never exceed 2000 SLOC. dwm is customized through editing its source code"
- Raspberry Pi 3 - Browser Client - A guide which omits dwm, but uses similar steps to install firefox in a diskless install on ARM. dwm is not used on the RPI3, due to tmpfs limitations.