Thursday, April 10, 2014

Replacing KDE with i3 and basic i3wm setup

In this post I assume you have a standard KDE installation.
Following steps should guide you to replacing KDE's kdm with much faster and simpler SLiM login manager with i3 Desktop Environment. At the end my basic i3 configuration is shown.

First step is to install few packages:
pacman -S i3-wm dmenu i3lock slim i3status
After the packages are installed on your system, create/edit file .xinitrc in your home folder and add following content:
#!/bin/bash

exec i3
Make it executable:
chmod +x .xinitrc
Now disable kdm startup and enable slim:
systemctl disable kdm
systemctl enable slim
Reboot your computer. Your system should boot with SLiM Login Manager and after login, you will get i3 session with first configuration wizard.
Press Enter. You can choose modifier key you'd like to use (select it with pressing Win or Alt key). I use as Win key as modifier key. Comfirm with Enter. Your basic configuration was generated in ~/.i3/config.

First steps in i3:
What you can now do is to use dmenu, installed earlier, to launch programs. Simply press your modifier key+d and type a command you'd like to launch.

For keyboard shortcuts and i3 overview have a look at default keybindings  and screencast.

Here is my custom configuration added to ~/.i3/config file:
# # # # # # # # # # # # #
# Krisko: Custom Config #
# # # # # # # # # # # # #

# default layout
workspace_layout tabbed
# lock screen
bindsym $mod+x exec i3lock -d -c 000000
# scratchpad, move and show, this is hidden workspace where we can put some window
bindsym $mod+m move scratchpad
bindsym $mod+o scratchpad show
# move worspaces
bindsym $mod+comma move workspace to output left
bindsym $mod+period move workspace to output right
# hide window borders
hide_edge_borders vertical

# # # # # # #
# Autostart #
# # # # # # #
# this is my autostart file
exec /home/krisko/bin/autostart

# # # # # # #
# Shortcuts #
# # # # # # #
# mod1=alt key
# mod4=win key
# # # # # # #

# mpc control
bindsym XF86AudioPlay exec mpcctrl play
bindsym XF86AudioStop exec mpcctrl stop
bindsym XF86AudioNext exec mpcctrl next
bindsym XF86AudioPrev exec mpcctrl prev
bindsym Cancel exec mpcctrl del y
bindsym Mod1+Pause exec mpcctrl del y
# Applications
bindsym Mod4+b exec firefox
bindsym Mod4+c exec krusader
bindsym Mod4+t exec xfce4-terminal
bindsym Print exec ksnapshot
bindsym XF86Mail exec thunderbird
bindsym XF86HomePage exec virtualbox
# My shortcuts
bindsym Mod1+F9 exec umountdev sdc
bindsym Mod1+F10 exec umountdev sdd
bindsym Mod1+F11 exec umountdev sde
#brightness toggle (0%/100%)
bindsym Mod4+Prior exec shortcuts winpgup
#turn off monitor
bindsym Mod4+Next exec shortcuts winpgdown
#toggle touchpad state
bindsym m:0x10+c:248 exec shortcuts fnf6
#change keyboard layout
#bindsym Mod1+Shift exec shortcuts kblayout
#bindsym m:0x19+c:50 exec shortcuts kblayout
bindsym Control+Mod1+k exec shortcuts kblayout

# # # # # # # # # # # # # #
# Window specific settings
# use xprop to find out class (WM_CLASS(STRING))
# for more info http://i3wm.org/docs/userguide.html#command_criteria
for_window [class="Yakuake"] floating enable
for_window [class="Yakuake"] border 0pixel
for_window [class="Pidgin"] floating enable
for_window [class="Keepassx"] floating enable
for_window [class="pop-up"] floating enable
for_window [class="I3-exit"] floating enable
for_window [title="Copying"] floating enable
for_window [title="Deleting"] floating enable
for_window [title="Moving"] floating enable
for_window [title="Testing Archive"] floating enable
for_window [title="Dia v0.97.2"] floating enable
for_window [title="Thunderbird Preferences"] floating enable
for_window [window_role="conversation"] floating enable, border normal
for_window [window_role="Msgcompose"] floating enable, border normal
In next post I'll show how to change SLiM theme, configure conky to use it with i3-status bar and create Logout/Reboot/PowerOff prompt in i3.

No comments:

Post a Comment