Category Archives: Uncategorized

How to make Linux look good

I’ve been using the copyright free Redhat clone CentOS 7 with the Gnome desktop for a while now. It has proved to be an excellent distro for experimenting with all kinds of enterprise services and packages. Over the last 9 months I have created a full virtual network running a number of instances of CentOS that have been stripped down to the terminal to reduce the attack surface and make better use of the limited resources my laptop gives me. Each of the VM’s has had at least one service, or more running on it, I’ve had a 389 directory server, DNS and a Dovecot/Squirrelmail/postfix email server amongst other things all running simultaneously on an entirely KVM platform.

CentOS isn’t just an excellent server platform it is also an excellent workstation and day to day distro, my CentOS laptop has taken over my Debian PC as my main device. In terms of practicality, CentOS is an absolute masterpiece, in terms of looks however, it doesn’t look so great if you’re going to use it as your main operating system.

One thing that bugged me was the default Gnome theme and settings, personally I found them to be quite ugly and clunky. I persevered with them for a number of months, mainly because I was so busy with proper server configuration geekery that I didn’t have time to mess about with something that only affected aesthetics.

One day however, in desperate need for something to procrastinate with I decided to make my CentOS desktop environment a little prettier. This is straightforward guide (I’m no graphics designer or user interface expert) but it should prove helpful nonetheless, especially to get a baseline desktop environment that you can tweak to your heart’s content! Additionally there a few troubleshooting tips for issues I encountered along the way.

Step 1: Download and install CentOS 7 (I used full x86_64 with Gnome shell 3.8.4). The default theme will look as follows, practical…but kinda ugly.


Step 2: Once CentOS is installed and updated, it is time to start configuring. There are a ton of themes available for Gnome, the theme I used was the Zukitwo theme which I downloaded from

Step 3: Download the following packages from the CentOS repositories. These packages will allow for simple installation of shell extensions direct from the firefox browser and the tweak tool will allow us to install themes and tweak Gnome.

# sudo yum install gnome-shell-extension-common.noarch
# sudo yum install gnome-tweak-tool.noarch

Step 4: Icon packs can be downloaded to give the icons a nicer look. Numix have created a number of themes and icon packs, I used the free Numix Circle Pack. Once this is done move them to /usr/share/icons.

Step 5: In your home folder create a hidden directory (if one doesn’t already exist) called themes. Remember to start the directory name with a dot. Once this is done move the zipped theme from the download location into this. For example;

# mkdir /home/thomas/.themes/
# mv /home/thomas/Downloads/ /home/thomas/.themes/

Step 6: Next up open the tweak tool we installed earlier, select the ‘shell extensions’ from the left pane. On this screen there a number of switches, find the one that says ‘User themes’ and make sure it is on.


Step 6.1: Staying in the tweak tool select ‘Theme’ from the left pane, then from the ‘Shell theme’ menu select the themes zipped directory from the ~/.theme directory. Some people will recommend that you unzip the theme first, personally I didn’t and I haven’t had any issue installing directly from the .zip.


Step 6.2: Finally from the ‘Icon Theme’ option select the icon pack (Numix in my case) from the drop down menu.

Step 7: This is where we encounter our first issue, the CentOS icon in the upper left of the screen is too large. This is a small and easy to fix issue, but it took me a while and much googling to figure it out.

big icon

Step 7.1: To fix this we need to edit the gnome-shell.css file, which can be found in the themes zip directory at /home/thomas/Downloads/

Step 7.2: Now there are a number of ways to edit this file, but the simplest way is to browse directly to it in the file manager, and open the zip directory with archive manager.

Step 7.3: In archive manager search for ‘gnome-shell.css’ then click it to open it with your default text editor, in my case this is gedit.

Step 7.4: to find the bit of css code we are looking to edit press ctrl + f and search for ‘.panel-logo-icon’ if this code exists edit it to read as follows, if it does not exist simply add the code to the bottom of file. (make use to use the correct parentheses{})

.panel-logo-icon {
padding-right: .4em;
icon-size: 1em;


Step 7.5: While in here there a number of things that can be tweaked, it is worth googling around to see what can be done. Some ideas include making the top panel transparent or fiddling around with the colour schemes. The usual precautions should be taken when editing anything, document what you are doing and make backups before changing anything.

Step 8: The bar along the bottom of the desktop is called the window list, personally I find it quite clunky. There are a number of ways to remove it, it can be removed using extensions (more on them later), or simply by selecting the correct session at login. This can be done by selecting the cog icon next to the sign in button on the logon page.

Step 9: Once windows list has been removed it may be difficult to move around windows, one solution is to use the minumum windows list extension that will place a drop down menu in the top panel with the window list in it. The other is to install a dock.

Step 10: The dock I used was Cairo Dock, a beautiful and functional dock that can be highly customised. CentOS does not have Cairo Dock in its standard repositories, but it is simple enough to download the RPM from here and install with yum from the local file.

Step 10.1: As said in the previous step Cairo Dock is highly customisable, there are too many options to go over here. But the Cairo Dock website has handy guide on how to configure startup options here and appearance and behaviour options here.

Step 11. Gnome supports shell extensions, self contained configurations which modify and tweak Gnome. There a couple of ways of installing these extentions via the website. Open with firefox and the extensions package we installed at the start of this tutorial will allow for simple extension configuration. These extensions can also be toggled on and off in the tweak tool.

Some the extensions I used are the quit button, and the minimised windows list.

Step 12: Now that Gnome is fully configured all that remains is to change the wallpaper to one that suits your style, this can be done simply by right clicking the desktop and selecting change wallpaper. The wallpaper I used in this tutorial can be found here.