PreReqs

  • Basic Terminal Navigation (Required)
  • Simple vim motions        (Recommended)

System Component Summaries

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 by Suckless
  • Manages all graphical program windows running within your X Window System (Desktop Mode)
  • This version has been 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
  • Mapped to spawn via Super+Space
  • ST is configured in ~/git/suckless/st/config.h
  • Super+Space spawn command is mapped in ~/git/suckless/dwm/config.h
  • Reinstall changes with sudo make clean install

TMUX (Terminal Multiplexor)

  • A terminal multiplexor. Launched by default with ST via ~/.zshrc. 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 accreting features
  • Launches programs via commandkeys, configurable menus, or by searching $PATH. Default Replicant config keymaps are listed below in HOTKEYS
  • SARA is configured in ~/git/sara/config.h
  • Recompile your updates to config.h with make, or within SARA itself by pressing 'm' while in ~/git/sara/
  • A previous SARA can reload changes to sara/config.h by pressing ':'
  • 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 these 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
  • The Dmenu launch hotkey is configured in ~/git/suckless/dwm
  • 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
  • The rocket icon applies a random theme based on wallpapers in ~/pix/walls

DUNST (Notification Daemon)

  • A simple, configurable notification daemon
  • Notifications can be lauched with commands like notify-send "Hi it's me" "a notification"
  • Configured in ~/.config/dunst/dunstrc

Oh-My-ZSH (ZSH extras)

  • Extra ease-of-life addons for zsh
  • Configured in ~/.oh-my-zsh
  • Sourced when a new terminal opens via ~/.zshrc

First Steps

Default Hotkeys

Note: The SUPER key is the Windows/Command key. In the suckless configs, it's referred to as Mod4Mask. Mod1Mask is ALT.

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 + hFocus window left
SUPER + hFocus window right
SUPER + wSet layout style: tiled
SUPER + eSet layout style: floating
SUPER + rSet layout style: monocle
SUPER + ENTERSet layout to previous layout
SUPER + spaceSpawn ST
SUPER + backspaceSpawn DMENU
SUPER + aIncrement number of windows on left side
SUPER + sIncrement number of windows on right side
SUPER + jNudge screen slit leftword
SUPER + kNudge screen slit rightword
SUPER + TABVisit previously visited window
SUPER + SHIFT + FToggle floating window
SUPER + +Increase window gaps
SUPER + -Decrease window gaps
SUPER + =Reset window gaps
SUPER + bToggle polybar gap
SUPER + qKill focused window

ST (Terminal)

Configured in ~/git/suckless/st/config.h

ALT + SHIFT + JIncrease terminal font size
ALT + SHIFT + KDecrease terminal font size
ALT + xIncrease opacity of ST
ALT + zDecrease opacity of ST
ALT + SHIFT + Cclipboard copy (use TMUX to copy if tmux is running)
ALT + vclipboard paste
SUPER + cttysend "sara\r"
SUPER + dttysend "reskin "
control + dExit

TMUX (Terminal Multiplexor)

Configured in ~/.tmux.conf

ALT + \Vertical Split
ALT + -Horizontal Split
ALT + ENTERToggle pane zoom
CONTROL + j, ESpace panes evenly
CONTROL + j, cNew tmux window
ALT + [NUM]Visit tmux window [NUM]
CONTROL + j, rReload ~/.tmux.conf
CONTROL + j, RReorder tmux windows
control + j, !Break current pane to new window
control + dExit

ALT + [Enter COPY MODE
[vim nav motions]Move/scroll about the terminal window
SPACEStart selection
ESCAPEDeselect
ENTERMake selection and exit COPY MODE

SARA (Special Application Ranging Area)

Configured in ~/git/sara/config.h

qQuit SARA
pLaunch quick nav window (edit in ~/.config/sara/pshd)
rLaunches ranger
yLaunches yay
MMusic Player (rmpc)
nApplies random theme
NFastfetch
vNeoVim
FLaunches Firefox
DSystem info menu
QKills SARA along with current tmux pane
XKill ST window (and associated tmux server)
SShutdown menu

Zen Browser

A Firefox fork in Beta. My current recommended browser after giving up on Qute. Install uBlock and Vimium extensions to perform mouse-less keyboard-only browsing (majoritively), extending the overall keyboard-centric theme of the Replicant build.

I recommend unmapping the default Vimium keybinds and starting with mine, allowing you to still use common base firefox hotkeys as well.

Gamers

Steam

Setting up the system for Steam was suprisingly simple. If I recall correctly, the steps were

Ricers

Give ~/skps/reskin a quick study. reskin can be invoked via reskin [png|jpg|jpeg], leveraging wal to generate and dump a dynamic color palette directly into ~/.cache/wal for sourcing by other programs, after first searching for a custom tailored theme in ~/skps/themes for priority application instead.

To create and edit a new theme based your wallpaper of choice:

reskin -s will reapply the same theme, resourcing your edited json file if available

reskin -r applies a random theme

reskin, without args, will apply your hardcoded SAVE OPTION directly from the reskin script. Comment the line wall=blah to always run with a random theme.

Several examples are already made available, go nuts

Software Developers

If you have a terminal-based workflow I recommend experimenting with SARA, otherwise, you do you.