A collection of my experiences with Linux in the form of dot files.
________________________
1. The layout for this README.md was heavily influenced by those of Spencer Tipping and Dylan Araps.
- Introduction
- Bootstrap
- Unexpected features you get right out of the gate
- Programs referenced by these configs
- Handy keybindings
The purpose of this repository is to contain the bare minimum of what is necessary to quickly bootstrap my current sensibilities on a Linux system. At its core, there are two assumptions:
- The use of the unstable branch of the Debian GNU/Linux Operating System, aka Sid đź’€.2
- The implementation of the Wayland protocol through the use of the Sway tiling Wayland compositor.
All the design decisions taken have the purpose to both manage and make explicit what probably remains as the most common way of interacting with computers, and, simultaneously, one of its less examined aspects: the layout of the computing space.
Although I use these dot files on Debian, I try to keep them as distribution agnostic as possible. I have deployed them successfully on Arch Linux (don't take this as an endorsement) and on Void Linux (you can take this as an endorsement).3
________________________
-
If you are aware of the risks and responsibilities that using Debian's unstable branch entail and still wish to go down the Sid route, make sure to replace your apt sources with the following lines:
deb http://deb.debian.org/debian unstable main contrib non-free deb-src http://deb.debian.org/debian unstable main contrib non-free
Then update your sources and upgrade to Sid:
sudo apt update && sudo apt full-upgrade
-
They will work for the most part, but some tweaking is needed to make them work properly on these distributions. However, since you are already using either of these two distributions, I will assume that you will know how to adapt these dot files to your system.
The following steps assume that you are on a running Debian Sid system. If you are running any Linux distribution other than Debian (this also includes Debian-based distributions), make sure to double-check that the packages listed in the boostrapping script are alvailable in your distribution's repositories, otherwise, the script will fail.
-
In order to bootstrap these dot files, install and use
wget
to download the bootstrapping script calledwaystrap.sh
, which is located inside theDebstrap
directory in this repository.sudo apt install wget wget https://github.com/argosatcore/Deb_Dots/blob/main/Debstrap/waystrap.sh
-
Run the script. Using super user privileges is highly discouraged, as the parts of the script after the installation of packages will fail.
./waystrap.sh
-
Profit:
- Bash's vim mode: When in normal mode, you will see a
-
at the beginning of your prompt. When in insert mode, you will see a+
at the beginning of the prompt. - Caps Lock key is swapped with Esc key: If you are a vim user (or someone that just uses the crap out of the Esc key), you know how handy this is. If you don't want this, just change it in the input configuration in Sway's config file.
- Mouse set for left handed people: If you happen to be part of the other 90% of the human population, just change the input configuration in Sway's config file.
- Change directories without using the
cd
command: Just type the name of the directory to move into it. - Bash completion is no longer case sensitive: No more wasted time pressing keys to get upper case letters.
- Neovim as a pager for man pages: Because man pages deserve better.
- Keyboard layout set to Latin American: Unless you need to type Spanish accents, you might want to take a look at Sway's config file and chage the keyboard layout to your preferred one. Us-International is set as a second option and can be toggled by pressing
Super+Space
. - Gapless single client: If there is only one client on a given workspace, gaps and borders will be disabled. As soon as another client is launched on the same workspace, gaps and borders will be activated.
- Ridiculously fast key repeat rate: Like, really fast.
All of which are apt install
able on Debian Sid:
Program | Description |
---|---|
foot |
Wayland native minimalist terminal emulator. |
gammastep |
Screen temperature manager. |
grimshot |
Wayland native screenshot tool. |
mako-notifier |
Wayland native notification daemon. |
nautilus |
File manager. |
neovim |
Text editor. |
swaybg |
Wayland native wallpaper utility. |
swaylock |
Wayland native screen locker. |
sway |
Wayland compositor. |
tmux |
Persistent SSH shell sessions. |
vim-gtk |
(Neo)Vim's clipboard integration. |
waybar |
Wayland native panel. |
wdisplays |
Wayland native graphical tool for configuring displays. |
wlogout |
Wayland session menu. |
wofi |
Wayland native application launcher, window switcher, command executor and many more. |
Super+Shift+c
: reload Sway.Super+Shift+e
: exit Wayland session.Alt+Shift+x
: lock screen.Super+Shift+minus
: hide/unhide scratchpad.Super+PageUp
: switch to the next workspace. If there is no next workspace occupied, it will automatically create a new one.Super+PageDown
: switch to the previous workspace. If there is no previously occupied workspace, it will automatically create a new one.Super+x
: toggle Waybar on/off.Super+Shift+b
: toggle window border on/off.Super+(1,2,3,4,5,6,7,8,9,0)
: Switch to workspace 1-10.Super+Shitft+(1,2,3,4,5,6,7,8,9,0)
: Move an application to workspace 1-10.Super+Space
: Switch keyboard layout. Options are: Latin American (default) and US-International.
Super+q
: close.Super+f
: fullscreen.Super+Escape
: toggle floating. Remember,Caps Lock
now works asEscape
and viceversa.Super+(h,j,k,l)
: change the selection of a window in a given direction.Super+Alt+(h,j,k,l)
: swap focused window with any window in a given direction.Super+Shift+(h,j,k,l)
: move window in a given direction.Super+w
: tab windows.Super+s
: stack windows.Super+e
: split tabbed or stacked windows.Alt+Tab
: switch focus between tiling and floating areas.
Super+Click1
: move window.Super+Click2
: resize window.
Super+Return
: run a terminal.Super+i
: run firefox.Super+n
: run nautilus.Super+d
: run wofi as an application launcher.Super+Tab
: run wofi as a window switcher.Super+Shift+q
: run wlogout.