PreReqs
- Terminal basics
- Simple vim motions
System Summary
This section gives a brief description of the installed components and can be referenced as you explore
DWM (Dynamic Window Manager)
- A tiling window manager made by Suckless
- Manages all graphical program windows running within your X Window System (Desktop Mode)
- This version has been manually patched to allow communication with Polybar
- DWM is configured in ~/git/suckless/dwm/config.h
- Reinstall changes with sudo make clean install
ST (Simple/Suckless Terminal)
- A no-nonsense terminal, lightweight and fast
- Manually patched to include extra features
- Can be spawned by default via Super+Space
- ST is configured in ~/git/suckless/st/ctmuxonfig.h
- Reinstall changes with sudo make clean install
TMUX (Terminal Multiplexor)
- A terminal multiplexor. Launched by default within ST. Grants ability to spawn more terminals within your terminal, in splits and/or tabs.
- Provides extra features like copying text from the terminal to the system clipboard
- Tmux is configured in ~/.tmux.conf
- Config can be reloaded via CONTROL + j then r
- Runs by default (disabled via zshrc)
SARA (Special Application Ranging Area)
- An application launcher for the terminal with hidden features
- Launches programs via commandkeys, listed below in HOTKEYS
- SARA is configured in ~/git/sara/config.h
- Reload changes with make
- Runs by default (disabled via zshrc)
RANGER (Terminal File Explorer)
- A vim-like terminal file explorer/navigator
- Ranger is configured in ~/.config/ranger
- Ranger reads the configs when launched
DMENU (Dynamic Menu)
- An application launcher and dynamic menu generator
- Launch applications and scripts via super+backspace
- Dmenu is configured in ~/git/suckless/dmenu
- Reinstalled config changes with sudo make clean install
POLYBAR (Configurable Status Bar)
- A lightweight and highly-configurable status bar, resting at the top of the screen
- Polybar is configured in ~/git/suckless/polybar
DUNST (Notification Daemon)
- A simple, configurable notification daemon
- Notifications can be lauched with commands like notify-send "Let Me Out" "This is not a dance"
- Configured in ~/.config/dunst/dunstrc
Oh-My-ZSH (ZSH extras)
- Extra ease-of-life adjustments for zsh
- Configured in ~/.oh-my-zsh
- Sourced when a new terminal opens
First Steps
Hotkeys
Note: The SUPER key is the Windows/Command key
DWM (Dynamic Window Manager)
Configured in ~/git/suckless/dwm/config.h
| SUPER + [NUM] | Visit screen [NUM] |
|---|---|
| SUPER + SHIFT + [NUM] | Move focused window to screen [NUM] |
| SUPER + SHIFT + CONTROL + [NUM] | Tag/untag focused window to screen [NUM] |
| SUPER + h | Focus window left |
| SUPER + h | Focus window right |
| SUPER + w | Set layout: tiled |
| SUPER + e | Set layout: floating |
| SUPER + r | Set layout: monocle |
| SUPER + ENTER | Set layout to previous layout |
| SUPER + space | Spawn ST |
| SUPER + backspace | Spawn DMENU |
| SUPER + a | Increment number of windows on left side |
| SUPER + s | Increment number of windows on right side |
| SUPER + j | Nudge screen slit leftword |
| SUPER + k | Nudge screen slit rightword |
| SUPER + TAB | Visit previously visited window |
| SUPER + SHIFT + F | Toggle window floating |
| SUPER + + | Increase window gaps |
| SUPER + - | Decrease window gaps |
| SUPER + = | Reset window gaps |
| SUPER + b | Toggle polybar gap |
| SUPER + q | Kill focused window |
ST (Terminal)
Configured in ~/git/suckless/st/config.h
| ALT + SHIFT + J | Increase terminal font size |
|---|---|
| ALT + SHIFT + K | Decrease terminal font size |
| ALT + x | Increase opacity of ST |
| ALT + z | Decrease opacity of ST |
| ALT + SHIFT + C | clipboard copy (use TMUX to copy if tmux is running) |
| ALT + v | clipboard paste |
| SUPER + c | ttysend "sara\r" |
| SUPER + d | ttysend "reskin " |
| control + d | Exit |
TMUX (Terminal Multiplexor)
Configured in ~/.tmux.conf
| ALT + \ | Vertical Split |
|---|---|
| ALT + - | Horizontal Split |
| ALT + ENTER | Toggle pane zoom |
| CONTROL + j, E | Space panes evenly |
| CONTROL + j, c | New tmux window |
| ALT + [NUM] | Visit tmux window [NUM] |
| CONTROL + j, r | Reload ~/.tmux.conf |
| CONTROL + j, R | Reorder tmux windows |
| control + d | Exit |
| ALT + [ | Enter COPY MODE |
|---|
| [vim nav motions] | Move/scroll about the terminal window |
|---|---|
| SPACE | Start selection |
| ESCAPE | Deselect |
| ENTER | Make selection and exit COPY MODE |
SARA (Special Application Ranging Area)
Configured in ~/git/sara/config.h
| q | Quit SARA |
|---|---|
| p | Launch quick nav window (edit in ~/.config/sara/pshd) |
| r | Launches ranger |
| y | Launches yay |
| M | Music Player (rmpc) |
| n | Creates new random system theme |
| N | Fastfetch |
| v | NeoVim |
| F | Launches Firefox |
| D | System info menu |
| Q | Kills tmux pane |
| X | Kill ST window (and associated tmux server) |
| S | Shutdown menu |
Universal Vim Keybinds
Gaming
Setting up the system for Steam was suprisingly very simple. If I recall, the steps were just
- Enable the multilib repository
- Download the steam package appropriate for the system (Vulkan for the cyberdeck)
- Install a game from Steam
- That's pretty much it. Have played through Cyberpunk, Elden Ring, Witcher 3, and Silksong entirely with no issues (except for the quirks that exist between games and all window managers, such as not being able to leave the game window and reliable come back..)