Caleb

CWM Setup

April 16, 2024
Tags:

This post explains how to set up a (nearly) complete desktop with CWM on Trisquel GNU/Linux 11 "Aramo".

Startup Programs

Put the following in "~/.xprofile":

mate-settings-daemon &

This starts various services that are expected, like backlight and volume control.

Keyboard Shortcuts

Use GNOME-inspired keyboard shortcuts. Super+L to lock with the Trisquel's default screen locker, mate-screensaver-command. Super+Enter to open MATE Terminal, similar to i3 and Sway. Super+Left to tile the current window to the left side of the screen. Ctrl+Alt+Left/Right to move between active workspaces (it works just like GNOME's dynamic workspaces!) Super+[1-9] to switch to a specific workspace, like in Sway and i3.

I use MATE Terminal because it supports color emoji. Sadly, urxvt does not.

# Applications
command term "mate-terminal"
command lock "mate-screensaver-command -l"

# Keybindings
bind-key 4-Return terminal
bind-key 4-l lock 

# Tiling
bind-key 4-Left	  window-vtile

# Workspaces
bind-key 4-1 group-only-1
bind-key 4-2 group-only-2
bind-key 4-3 group-only-3
bind-key 4-4 group-only-4
bind-key 4-5 group-only-5
bind-key 4-6 group-only-6
bind-key 4-7 group-only-7
bind-key 4-8 group-only-8
bind-key 4-9 group-only-9

bind-key 4S-1 window-movetogroup-1
bind-key 4S-2 window-movetogroup-2
bind-key 4S-3 window-movetogroup-3
bind-key 4S-4 window-movetogroup-4
bind-key 4S-5 window-movetogroup-5
bind-key 4S-6 window-movetogroup-6
bind-key 4S-7 window-movetogroup-7
bind-key 4S-8 window-movetogroup-8
bind-key 4S-9 window-movetogroup-9

bind-key CM-Right group-cycle
bind-key CM-Left group-rcycle

Display Battery

Install tmux Plugin Manager.

git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm

Add the following to the end of "~/.tmux.conf".

set -g status-right '#{battery_icon} #{battery_percentage} | %a %h-%d %H:%M '

# List of plugins
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-sensible'
set -g @plugin 'tmux-plugins/tmux-battery'

# Other examples:
# set -g @plugin 'github_username/plugin_name'
# set -g @plugin 'github_username/plugin_name#branch'
# set -g @plugin 'git@github.com:user/plugin'
# set -g @plugin 'git@bitbucket.com:user/plugin'

# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf)
run '~/.tmux/plugins/tpm/tpm'

Display Network Status

Add the following to "~/.tmux.conf".

set -g status-right '#{battery_icon} #{battery_percentage} #{online_status} | %a %h-%d %H:%M '
set -g @online_icon "🛜"
set -g @offline_icon "✈️"

set -g @plugin 'tmux-plugins/tmux-online-status'

Scroll in tmux

Add the following to "~/.tmux.conf".

set -g @plugin 'noscript/tmux-mighty-scroll'

See my full config on Codeberg.

Dotfiles