Result:
i3 is a tiling window manager inspired by wmii that is primarily targeted at developers and advanced users(vim users).
Installation
- Open your terminal.
- Install i3:
sudo apt install i3
sudo apt remove dunst
- Change your window manager to i3:
dconf write /org/mate/desktop/session/required-components/windowmanager "'i3'"
- Prevent desktop with icons to cover your windows:
dconf write /org/mate/desktop/background/show-desktop-icons false
- Log out and go back:
Tip: You can use dconf-editor
(sudo apt install dconf-editor
) to easily change dconf.
How to hide i3bar
- Open your i3 config(
~/.config/i3/config
) and replace(at the end of the config):
bar {
status_command i3status
}
to:
#bar {
# status_command i3status
#}
- Press SUPER+SHIFT+R:
Installation of picom
picom is a standalone compositor for Xorg, suitable for use with window managers that do not provide compositing. picom is a fork of compton, which is a fork of xcompmgr-dana, which in turn is a fork of xcompmgr.
It's necessary for some mate's desktop effects and to prevent some visual bugs.
Before:
After:
- Install picom:
sudo apt install picom
- Add
exec --no-startup-id picom
to your i3 config(~/.config/i3/config
). - Log out and go back.
Disable XDG autostart in i3 config to prevent double applications autostart
Open your i3 config(~/.config/i3/config
) and replace:
# Start XDG autostart .desktop files using dex. See also
# https://wiki.archlinux.org/index.php/XDG_Autostart
exec --no-startup-id dex --autostart --environment i3
to:
# Start XDG autostart .desktop files using dex. See also
# https://wiki.archlinux.org/index.php/XDG_Autostart
#exec --no-startup-id dex --autostart --environment i3
How to change/disable brisk-menu hotkey
If you have WIN as your i3 modifier(SUPER) and brisk-menu as your applet, you will have bad experience with i3wm.
Open your terminal and write to disable:
dconf write /com/solus-project/brisk-menu/hot-key "''"
to change hotkey(<CTRL>
- CTRL, <ALT>
- ALT, <SHIFT>
- SHIFT, <Mod4>
- SUPER/WIN):
dconf write /com/solus-project/brisk-menu/hot-key "'<CTRL>P'"
to change to default:
dconf reset /com/solus-project/brisk-menu/hot-key
Tip: You can use dconf-editor
(sudo apt install dconf-editor
) to easily change dconf.
Uninstallation
Open your terminal and paste:
sudo apt purge i3 i3-wm -y
dconf reset /org/mate/desktop/session/required-components/windowmanager
dconf reset /org/mate/desktop/background/show-desktop-icons
mate-session-save --force-logout
Optional:
[details="How to replace "exit i3" to "exit mate" (log out dialog shortcut)"]
- Open your i3 config(
~/.config/i3/config
) and replace:
bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'"
to:
#bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'"
bindsym $mod+Shift+e exec --no-startup-id "mate-session-save --logout-dialog"
or to(if you want a shut down dialog instead of a log out dialog):
#bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'"
bindsym $mod+Shift+e exec --no-startup-id "mate-session-save --shutdown-dialog"
- Press SUPER+SHIFT+R
[/details]
How to add icons to titlebars
-
Add
for_window [all] title_window_icon padding 1px
to your i3 config(~/.config/i3/config
). -
Press SUPER+SHIFT+R
How to close windows by pressing the middle mouse button(scroll wheel) on i3 title bars
-
Add
bindsym --release --border button2 kill
to your i3 config(~/.config/i3/config
). -
Press SUPER+SHIFT+C
Fixing i3 borders for gnome 3 applications
Before:
After:
-
Add
for_window [window_type="normal"] border normal
to your i3 config(~/.config/i3/config
): -
Press SUPER+SHIFT+R
Ubuntu mate-like theme for i3 borders
-
Add
client.focused #87a556 #5f743c #ffffff #dfef9f #5f743c
to your i3 config(~/.config/i3/config
). -
Press SUPER+SHIFT+R
Bash scripts for switching window managers
How to run a bash script (I use bash SCRIPTNAME.sh
)
Ideas how to use it
- Attach it to a shortcut ( open Control Center > Keyboard Shortcuts ).
- Run a bash script at startup ( open Control Center > Startup Applications ).
- Add scripts to your PATH or add aliases of your scripts to your shell config file.
- Attach it to mate-panel's launcher.
Switch to default(~/.scripts/switchtodefault.sh
):
#!/bin/bash
pkill i3
pkill marco
pkill picom
marco &
disown
dconf reset /org/mate/desktop/session/required-components/windowmanager
dconf reset /org/mate/desktop/background/show-desktop-icons
Switch to i3(~/.scripts/switchtoi3.sh
):
#!/bin/bash
killall marco
pkill -9 compiz
pkill i3
i3 &
disown
dconf write /org/mate/desktop/session/required-components/windowmanager "'i3'"
dconf write /org/mate/desktop/background/show-desktop-icons false
Toggle between two window managers(~/.scripts/togglewms.sh
):
#!/bin/bash
pgrep i3 && bash ~/.scripts/switchtodefault.sh || bash ~/.scripts/switchtoi3.sh
Use bash .scripts/togglewms.sh
in mate's UI or bash ~/.scripts/togglewms.sh
in terminal to toggle between marco and i3wm.
Tip: you can use mate-tweak --layout LAYOUTNAME
to switch between mate's desktop layouts.
Useful links
-
i3-resurrect - A simple but flexible solution to saving and restoring i3 workspaces.
-
i3wsr - a small program that uses I3's IPC Interface to change the name of a workspace based on its contents.