Recently I was being short of RAM, and saw gnome consuming as much as 6GB at startup!
So I tried i3 window manager, and am all in now. No going back.
Uniqueness
Cutting short, i3-wm
allows you to customize how your filesystem and your interactions with screens and windows, while being very mild to your processing power. A fully functional startup would consume as low as 1.4G RAM. Also it’s tiling behaviour allows you to organise your windows in manner and ease not possible in floating windows managers like gnome. Also creating everything yourself using basic structures induces ikea effect, making you praise what you made more than it’s value!
You would be able to:
- Create your own dock (using
i3status
or i3blocks
) that displays info you choose to see
- Create your own application launcher using
rofi
- Handle applications spawning in different workspaces
- Open multiple applications in a single screen, handling their scaling and sizing with declarative means instead of dragging or panning
Assuming
You’re using Ubuntu
or any Debian
based linux-distro.
Otherwise only installation parts would differ, you can follow the rest as is.
It would be great if you get acquainted with working with vim.
Check out vimtutor
directly on your terminal to get through vim keyboard bindings.
Installation
Install i3
using
sudo apt install i3 -y
sudo apt-get install i3-wm i3status i3lock suckless-tools
Now logout and in the screen where you are prompted for a password, check the bottom-right for a settings ⚙️ symbol. Choose the option i3
and now login.
You would face i3-config-wizard
upon initialization. Choose mod
key as the win key and NOT the alt key because this creates a lot more possible key combinations.
You would be greeted by:
Yes there's a bit more work until it becomes like:
Config
Check out ~/.config/i3/config
file for the default configuration you saw before.
Now replace the file with the following:
config file
In the above, take care to change the path to your wallpaper picture by replacing Line 197. I adopted screenshot keys from here
Dependencies
In order to make everything run, install the following
sudo apt-get install rofi # application runner
sudo apt-get install brightnessctl # controls brightness
# give yourself permissions to change brightness
sudo usermod -aG video ${USER}
sudo apt-get install i3blocks # change dock from i3status to i3blocks
sudo apt install lxappearance # give more flexibility in appearance
sudo apt install feh # allow setting wallpapers
sudo apt-get install maim # take screenshots
sudo apt-get install xclip # copy to clipboard
sudo apt-get install pavucontrol # change audio controls
Anomalies
If you face the problem of having every text/icon too small to read, check scaling i3 screen: here
If font doesn’t come up correctly, follow correcting font:
- Re-run
i3-config-wizard
- unzip fontawesome-free-6.1.1-web.zip
- unzip YosemiteSanFranciscoFont-master.zip
- sudo apt install lxappearance
- Edit Font at
~/.gtkrc-2.0
and ~/.config/gtk-3.0/settings.ini
Conclusion
Get used to the keyboard shortcuts assigned inside the config
file you set up above, some include
Key |
Functionality |
$mod+enter |
Open default terminal |
$mod+j |
Switch focus to window on right, similarly works for k l ; |
$mod+shift+j |
Switch position with window on right, similarly works for k l ; |
$mod+1 |
Change workspace to 1, similarly works from 1 2..9 0 |
$mod+D |
Open application launcher, can use Ctrl+Tab here |
$mod+w |
Make all windows within this workspace tabbed |
$mod+e |
Make all windows within this workspace tiled |
$mod+s |
Make all windows within this workspace stacked |
$mod+shift+q |
Quit the focussed window |
$mod+r |
enter resize mode, can use j k l ; to resize in those directions |
PrtScrn |
Full Screen screenshot save to ~/Pictures |
Shift + PrtScrn |
Selection screenshot save to ~/Pictures |
Super + PrtScrn |
Active Window screenshot save to ~/Pictures |
Ctrl + PrtScrn |
Full Screen screenshot save to clipboard |
Ctrl + Shift + PrtScrn |
Selection screenshot save to clipboard |
Ctrl + Super + PrtScrn |
Active Window screenshot save to clipboard |
I hope you appreciate this workstyle!
window-manager
convenience