Debian JWM Installation

JWM is one of the most underrated floating window managers available for Linux. It’s super lightweight, making it great for everything from older PCs, all the way up to super-performant workstations. It comes with it’s own status bar and menu, with default configs that are easy to edit and add to. My custom configuration replaces the default menu with Rofi to launch programs and other menus. The steps below work well with a Debian base installation as I covered in a previous post, and will install JWM with my custom configurations and theming, along with a good base set of applications. The default configuration is for use with HiDPI monitors (192 dpi settings) and desktop-type computers, but there are options at the end of the script that let you change to 96 dpi settings for use with non-HiDPI monitors, and/or change to laptop-type (battery powered) computer settings.

Step 1: Install Git

sudo apt install git

Step 2: Clone my custom scripts

git clone https://git.sr.ht/~e33io/scripts

Step 3: Change the directory to the scripts directory

cd scripts

Step 4: Run the JWM script

sh deb-post-install-jwm.sh

Step 5: At the end of the script you will see the option below, and answer n (for no) to keep the default HiDPI settings or y (for yes) to change to non-HiDPI settings

NOTE: The configs that were installed with this script
are based on using HiDPI monitors (192 dpi settings).
The option below lets you change to 96 dpi settings for
use with non-HiDPI monitors.
---------------------------------------------------------
Do you want to change to 96 dpi non-HiDPI settings? (y/n)

Step 6: After the option above, you will see the option below, and answer n (for no) to keep the default desktop-type computer settings or y (for yes) to change to laptop-type computer settings, then you will see “All done, you can now run other commands or reboot the PC” when the script is finished

NOTE: The configs that were installed with this script
are based on using a desktop-type computer.
The option below lets you change to laptop configs for
use with a laptop-type (battery powered) computer.
---------------------------------------------------------
Do you want to change to laptop configs? (y/n)

Step 7: Reboot the PC

systemctl reboot

JWM Keybindings

Modifier keys:

Mod4      Windows (Super) key
A         Alt key
C         Control key
S         Shift key
Return    Enter key
space     Space bar
Left      Left arrow key
Right     Right arrow key
Up        Up arrow key
Down      Down arrow key
Tab       Tab key
Print     PrtSc (Print Screen) key
button1   Left mouse button
button3   Right mouse button
Custom keybindings:

Mod4+d          Program launcher (app menu)
Mod4+Return     Launch terminal
Mod4+S+Return   Launch file manager
Mod4+1          Switch to workspace 1
Mod4+2          Switch to workspace 2
Mod4+3          Switch to workspace 3
Mod4+4          Switch to workspace 4
Mod4+5          Switch to workspace 5
Mod4+6          Switch to workspace 6
C+A+Right       Switch to next workspace
C+A+Left        Switch to previous workspace
Mod4+S+1        Send active window to workspace 1
Mod4+S+2        Send active window to workspace 2
Mod4+S+3        Send active window to workspace 3
Mod4+S+4        Send active window to workspace 4
Mod4+S+5        Send active window to workspace 5
Mod4+S+6        Send active window to workspace 6
Mod4+S+Right    Send active window to next workspace
Mod4+S+Left     Send active window to previous workspace
A+Tab           Change active window focus to next window
Mod4+A+Right    Change active window focus to next window
A+S+Tab         Change active window focus to previous window
Mod4+A+Left     Change active window focus to previous window
Mod4+S+f        Toggle active window fullscreen
Mod4+S+m        Maximize and unmaximize active window
Mod4+S+v        Maximize and unmaximize active window vertically
Mod4+S+h        Maximize and unmaximize active window horizontally
Mod4+S+i        Minimize (hide) active window to tray
Mod4+S+space    Move active window to center of screen
Mod4+Right      Tile active window right
Mod4+Left       Tile active window left
Mod4+Up         Tile active window up
Mod4+Down       Tile active window down
A+space         Show active window's menu
Mod4+o          Show list of open windows
Mod4+S+q        Close active window
Print           Screenshot entire desktop
S+Print         Screenshot selected area
Mod4+x          Lock screen
Mod4+p          Power menu (lock, logout, reboot, shutdown)

Mod4+button1 in the window and drag     Move active window
Mod4+button3 in the window and drag     Resize active window
button1 on the window border and drag   Resize active window

View the ~/.jwmrc file to see all the configured keybindings that aren’t indicated in the box above.