Gnome with i3 on Fedora 29

I have been thinking of doing this for long time, finally I managed to get this working. Here is what you need to do to get i3 with all other gnome services running.

First we will create 2 files, this is actually all you need. In these ones, I copied the original gnome files and just change gnome-shell to i3 to replace my window manager.

11:15:43=>[~]> cat /usr/share/gnome-session/sessions/gnome-i3.session
[GNOME Session]
Name=GNOME + i3
# RequiredComponents=gnome-flashback-init;gnome-flashback;i3;gnome-settings-daemon;
RequiredComponents=i3;org.gnome.SettingsDaemon.A11ySettings;org.gnome.SettingsDaemon.Clipboard;org.gnome.SettingsDaemon.Color;org.gnome.SettingsDaemon.Datetime;org.gnome.SettingsDaemon.Housekeeping;org.gnome.SettingsDaemon.Keyboard;org.gnome.SettingsDaemon.MediaKeys;org.gnome.SettingsDaemon.Mouse;org.gnome.SettingsDaemon.Power;org.gnome.SettingsDaemon.PrintNotifications;org.gnome.SettingsDaemon.Rfkill;org.gnome.SettingsDaemon.ScreensaverProxy;org.gnome.SettingsDaemon.Sharing;org.gnome.SettingsDaemon.Smartcard;org.gnome.SettingsDaemon.Sound;org.gnome.SettingsDaemon.Wacom;org.gnome.SettingsDaemon.XSettings;
11:15:47=>[~]> cat /usr/share/xsessions/gnome-i3.desktop
[Desktop Entry]
Name=GNOME i3
Comment=This session logs you into GNOME + i3
Exec=env GNOME_SHELL_SESSION_MODE=gnome-i3 gnome-session –session gnome-i3
TryExec=gnome-session
Type=Application
DesktopNames=GNOME-Classic;GNOME;

Once, you have created these files, you can restart gdm and then select “Gnome i3” to login to your brand new session of gnome with i3.

image viewer tools

These are some of the image viewers that I know, pick your choice 🙂


1
sudo yum install imageinfo.i686 gtkimageview.i686 imagej.noarch gimmage.i686 gpicview.i386 gthumb.i686 immix.i686 mirage.i686 pony.noarch viewnior.i686 fotoxx.i686

systemctl enable and start service

Most of the times when I want to enable the service, I find myself enabling it immediately or it is vice versa. So, the commands I used to use were:

systemctl enable sshd.service
systemctl start sshd.service

But recently I learned that I do not need the 2 commands and this can be done in single command like below

1
 

systemctl enable --now sshd.service