Fedora i3 Installation

i3 is one of the most popular and well documented tiling window managers available for Linux. It comes with it’s own status bar, screen locker and menu, with very sane default configs that are easy to edit and add to. i3 is very lightweight, making it great for everything from older PCs, all the way up to super-performant workstations. The steps below work well with a Fedora base installation as I covered in a previous post, and will install i3 with my custom configurations and theming, along with a good base set of applications.

Step 1: Enter sudo dnf install git to install git

Step 2: Enter the following command to clone my custom scripts

git clone https://gitlab.com/e33io/scripts.git ~/scripts

Step 3: Enter cd scripts to change the directory to the scripts directory

Step 4: Enter the following command to make the i3 script executable

chmod +x fed-post-install-i3.sh

Step 5: Enter the following command to run the i3 script

bash fed-post-install-i3.sh

Step 6: After the script finishes, enter cd to change the directory to the user directory

Step 7: Enter nano ~/.config/i3/config and comment out the Debian line and un-comment the Fedora line like the following example

# Start policy kit agent for Debian, comment out for Fedora
#exec --no-startup-id /usr/lib/policykit-1-gnome/polkit-gnome-authentication-agent-1

# Start policy kit agent for Fedora, comment out for Debian
exec --no-startup-id /usr/libexec/lxqt-policykit-agent

Step 8: Save and exit the config file

NOTE: Steps 9 through 14 are only needed for non-HiDPI monitors (standard 96 DPI resolution)

Step 9: Enter nano ~/.Xresources and remove or comment out the following line

Xft.dpi: 192

Step 10: Save and exit the .Xresources file

Step 11: Enter nano ~/.bash_profile and remove or comment out the following lines

# set HiDPI scaling, based on using "Xft.dpi: 192" in the .Xresources file
export GDK_SCALE=2
export GDK_DPI_SCALE=0.5
export QT_AUTO_SCREEN_SET_FACTOR=0
export QT_SCALE_FACTOR=2
export QT_FONT_DPI=96

Step 12: Save and exit the .bash_profile file

Step 13: Enter sudo nano /etc/lightdm/slick-greeter.conf and remove or comment out the following line

enable-hidpi=on

Step 14: Save and exit the slick-greeter.conf file

Step 15: Enter reboot to reboot the PC


i3 Keybindings

Modifier keys:

Mod4      Windows (Super) key
Mod1      Alt key
ctrl      Control key
Shift     Shift key
Return    Enter key
space     Space bar
Left      Left arrow key
Right     Right arrow key
Up        Up arrow key
Down      Down arrow key
button1   Left mouse button
Custom keybindings:    $mod = Mod4

$mod+d             Program launcher (Dmenu)
$mod+Return        Launch terminal
$mod+Shift+Return  Launch file manager
$mod+1             Switch to workspace 1
$mod+2             Switch to workspace 2
$mod+3             Switch to workspace 3
$mod+4             Switch to workspace 4
$mod+5             Switch to workspace 5
$mod+6             Switch to workspace 6
$mod+7             Switch to workspace 7
$mod+8             Switch to workspace 8
$mod+9             Switch to workspace 9
$mod+0             Switch to workspace 10
ctrl+Mod1+Right    Switch to next workspace
ctrl+Mod1+Left     Switch to previous workspace
$mod+u             Switch to workspace with urgent window
$mod+Shift+1       Move active window to workspace 1
$mod+Shift+2       Move active window to workspace 2
$mod+Shift+3       Move active window to workspace 3
$mod+Shift+4       Move active window to workspace 4
$mod+Shift+5       Move active window to workspace 5
$mod+Shift+6       Move active window to workspace 6
$mod+Shift+7       Move active window to workspace 7
$mod+Shift+8       Move active window to workspace 8
$mod+Shift+9       Move active window to workspace 9
$mod+Shift+0       Move active window to workspace 10
$mod+h             Split workspace horizontal for next window
$mod+v             Split workspace vertical for next window
$mod+Right         Change active window focus right
$mod+Left          Change active window focus left
$mod+Up            Change active window focus up
$mod+Down          Change active window focus down
$mod+Shift+Right   Move active window right
$mod+Shift+Left    Move active window left
$mod+Shift+Up      Move active window up
$mod+Shift+Down    Move active window down
Shift+Right        Resize (grow) active window wider
Shift+Left         Resize (shrink) active window narrower
Shift+Up           Resize (shrink) active window shorter
Shift+Down         Resize (grow) active window taller
$mod+Shift+space   Toggle active window floating
$mod+button1       Move active floating window
$mod+Shift+f       Toggle active window fullscreen
$mod+Shift+q       Close active window
$mod+x             Lock screen
$mod+Shift+e       Exit i3 session

View the ~/.config/i3/config file to see all the configured keybindings that aren’t indicated in the box above