CBSH

My Post Installation Script for Arch Linux. It installs my Qtile Desktop, along with a bunch of supporting programs i use.

Theme Showcase

Click Me to view some images of how the desktop looks with different themes.

Package List / CBSH Source Code

The Package List and Source Code can be found in the following repos:

Arch Linux Repos:

Shared Repos:


Installing CBSH

To install CBSH on Arch Linux (and Arch Linux based Linux Distros, except Artix) run the below:
$ git clone https://gitlab.com/cabooshyy/cbsh/cbsh-arch/cbsh.git
$ cd cbsh
$ ./cbsh
The installation script will walk you through installing everything, you do not need to run it as sudo, and the script will warn you not to do so.
The script will ask for sudo privileges when it needs to install packages, this ensures that everything is installed for your user and not in root.

How do i update CBSH?

With your Package Manager! Just update your system as usual with sudo pacman -Syu and if there are any updates, they will be downloaded and placed into /etc/cbsh.

We NEVER touch $HOME!

Why? Because we don't want to overwrite any existing configuration and any changes you may have made since installing. This way you can look at the updated files and update them on your own terms, by copying them from /etc/cbsh into your home directory.
As an example, say i'd pushed an update to zsh-cbsh and you wanted to use the updated config file, you'd copy the new file from /etc/cbsh into your $HOME, and if i'd pushed an update to qtile-cbsh you'd do the same procedure, but remember its inside a .config directory, your file manager likely has dotfiles hidden by default (Most, if not all have CTRL+H as the "Hide/Unhide hidden files" keybind). and copy the new config to your $HOME's .config directory.

Setting a Wallpaper

By default, i do not include a Wallpaper setter, as Qtile can set a wallpaper as part of its screen configuration.
However, should you want to use one, you can easily remove the "wallpaper=" declaration in the screen setup section of the qtile config and use a program such as feh, nitrogen, sxiv etc. to manage and set your wallpapers.

Qtile Keybinds

Qtile uses mod4 (the Super/Windows key) as the MODKEY, this is configurable in the config and you can set the Modkey to whatever you would like.

General Keybinds

KEYBINDS ASSOCIATED ACTION
MODKEY + ALT + L Lock Screen using Betterlockscreen
SHIFT + PRINT Take Screenshot with Flameshot
MODKEY + ENTER Open Terminal (Default is ST)
MODKEY + 1-9 Switch to Group 1-9
MODKEY + SHIFT + 1-9 Switch to and send Focused window to Group 1-9
MODKEY + F11 Terminal Scratchpad
MODKEY + F12 Qtile Shell Scratchpad
MODKEY + SHIFT + C Kill (Close) Focused Window
MODKEY + CTRL + R Restart Qtile
MODKEY + CTRL + Q Logout of Qtile (Quit Session)
XF86AudioMute/Play/Next/Prev/Stop Media Key binds for playerctl and amixer for mute


KEYBINDS ASSOCIATED ACTION
MODKEY + H / J / K / L Move Focus: Left / Down / Up / Right
MODKEY + SHIFT + H / J / K / L Move Window: Left / Down / Up / Right
MODKEY + CTRL + H / J / K / L Grow/Shrink Window: Left / Down / Up / Right
MODKEY + N Normalise (Reset) The Window Sizes


KEYBINDS ASSOCIATED ACTION
MODKEY + SHIFT + ENTER Toggle between sides of Stack (in Master/Stack Layout)
MODKEY + SHIFT + T Toggle Between Enabled Layouts
MODKEY + TAB Toggle Floating on Focused Window

Emacs Keychords

KEYBINDS ASSOCIATED ACTION
Control + E E Launch DOOM Emacs
Control + E B Open iBuffer inside Emacs
Control + E D Open Dired insed Emacs
Control + E V Open vterm inside Emacs

Run launcher Keychords

KEYBINDS ASSOCIATED ACTION
MODKEY + D D Open dmenu
MODKEY + D R Open Rofi (Not installed by default, given as an alternative)

dmenu Script Keychords

KEYBINDS ASSOCIATED ACTION
MODKEY + P C Runs dm-config script (Lists a selection of config files which are opened in emacs.)
MODKEY + P T Runs dm-theme script (Changes Qtile and Emacs Themes.)
MODKEY + P L Runs dm-logout script (same script Ctrl+Mod+Q executes.)

Doom Emacs Keybinds

Emacs refers to Alt as M- (Meta), so whenever you see a command here (or online) that prefixes it with M-, its talking about Alt.

KEYBINDS COMMAND DESCRIPTION
M-x Run Command M-x is a command prompt, think Sublime and VSCode's Command Palettes
SPC . find-file Opens dired file manager in split
SPC f r counsel-recentf Open Recent Files
SPC h r r doom/reload Reloads Doom Emacs
SPC t b doom-big-font-mode Toggles Doom Emacs' Big Font Mode
SPC t l doom/toggle-line-numbers Toggle Line Numbers
SPC w d evil-window-delete Delete Window (split)
SPC w q evil-quit Quits Window (split)
SPC w s evil-window-split Split Window Horizontally
SPC w v evil-window-vsplit Split Window Vetically