In this post I’ll continue the setup of my Arch linux system by installing and customizing a gui environment.
Since I will be installing a GUI I am going to need to install graphics drivers so video will perform well. My arch machine is a virtual machine running in VirtualBox so I can do this by installing that VirtualBox Guest Additions. Luckily Arch has a package that makes installing the guest additions easy. I just type the command “pacman -S virtualbox-guest-utils”. The guest additions installer asks me a couple of questions and begins installing. I won’t be screenshotting all of the pacman installs anymore because they basically all look the same.
Now that I have my video driver installed I need to load a display server. The standard for almost every linux machines with a GUI is Xorg and that’s what I’ll be using. Another up and comer is Wayland but I won’t be experimenting with that right now. Installing the xorg package and it’s init package xinit is done with just another pacman command “pacman -S xorg-server xorg-xinit”.
These are the basic building blocks of using a GUI on Linux. Xorg does not do much on its own. The next step is to install a Window Manager or full blown Desktop Environment. These systems will rely on xorg to work with the underlying operating system. There are a ton of options out there so it’s worth doing a little research to see what would work best for your workflow and preferences. I’ve decided that for my system I want to use the xfce desktop environment. I’ve never played with a tiling window manager before and they look interesting so I will also be installing the i3 window manager.
Of course xfce is just another pacman package. I just run “pacman -S xfce4” and let the install run. Now that my desktop environment is installed I need to tell xorg to use it when I run startx by editing the xinitrc file. So first I create a backup of the original file with the command “cp /etc/X11/xinit/xinitrc /etc/X11/xinit/xinitrc.backup”. Next I edit the /etc/X11/xinit/xinitrc file and comment out the “xterm” lines and replace them with “exec startxfce4”. I also leave a specific section uncommented as recomended here.
Now I just type “startx” and I’m greeted with the xfce startup wizard.
I just chose to use the default config to get started. This sets up a basic desktop environment complete with some tool bars, menus, and applications.
I could just stop here and have a perfectly fine desktop environment but that would be too boring. To install my i3 window manager I install the i3 package with “pacman -S i3”. Then I follow the instructions here and shutoff session saving.
Now I add i3 to the xfce startup items.
Finally I disable the xfce wm and desktop.
Now when I log off and log back in I am greeted with the initial i3 setup wizard. I just select the defaults and I end up at my new xfce/i3 desktop.
Next I do a little customizing. I install feh to setup a desktop background and I remove the bottom application launcher to clean up the screen. Then I install the chromium browser so I can download a desktop background. I add the following line to the end of my i3 config file to set the wallpaper with feh.
This is where I’ll stop for now. I have a clean and function desktop interface for my arch system that has the functionality of both xfce and i3. Next time I’ll finish customizing my gui and make the boot process a little simpler.