Adopting Fedora 17 as my personal system at home was inevitably going to put me on the desktop tweaking treadmill that I jumped off almost 6 years ago. Only this time things are a bit more complicated. The Gnome developers seem not to get what the “Personal” in Personal Computer means. Sorry guys, but you brought that on yourselves. Cheers!
Some customization notes below.
1. Disable SELinux by changing “enabled” to “disabled” in /etc/selinux/config. Reboot to effect change. Yes, I know this makes me theoretically more vulnerable but despite everyone’s best efforts Mandatory Access Controls are still too much of a hassle to maintain on a personal desktop.
2. If this is will be a server, turn off and disable its firewall. Again, no one is paying me to mess around with port settings on my personal machine.
systemctl stop iptables systemctl disable iptables systemctl stop ip6tables systemctl disable ip6tables
Note: If you invoke any iptables commands past this point it will result in the firewall being re-enabled.
3. If a stationary desktop, back up existing network files and scripts (/etc/hosts, /etc/resolv.conf, /etc/sysconfig/network-scripts/eth-*) and stop and disable NetworkManager. As I have said many times before, NetworkManager is evil and should only be allowed to live where absolutely necessary.
systemctl NetworkManager stop systemctl disable NetworkManage
Make sure the following appear in /etc/sysconfig/network:
NETWORKING=yes HOSTNAME=yourhost.example.com GATEWAY=10.1.0.1
HOSTNAME is obvious. GATEWAY is the default gateway for your network.
Now modify /etc/hosts to add a line for your host IP and name:
127.0.0.1 localhost 10.1.0.30 myhost.example.com myhost
Your /etc/resolv.conf should have at least your local DNS servers (I usually add a couple of external ones as well — just in case, in this example the Google’s public DNS servers):
nameserver 10.1.0.8 nameserver 10.1.0.10 nameserver 126.96.36.199 nameserver 188.8.131.52 search example.com
Modify the existing ifcfg-* scripts for existing physical interfaces so they look something like this (note the example given is for my particular system on my particular network, adjust to conform to your own environment):
UUID=6fe3ec95-5209-4bdc-a490-9d207a7a6d5a NM_CONTROLLED=no HWADDR=18:13:63:cc:2f:4b DEVICE=em1 TYPE=Ethernet BOOTPROTO=static IPADDR=10.1.0.30 NETMASK=255.255.252.0 GATEWAY=10.1.0.1 NETWORK=10.1.0.0 BROADCAST=10.1.0.255 ONBOOT=yes
Special Note: Be sure to include the directive “NM_CONTROLLED=no” in every script, including ifcfg-lo. Otherwise you will find NetworkManager raising its ugly head again and overwriting your network files.
Enable and restart the network.
systemctl enable network systemctl restart network
4. Download and install the rpm for the rpmfusion repository. It doesn’t have everything you’ll want, but most of it.
5. Install gnome-tweak-tool, the MVP of Fedora utilities.
6. Turn on the following features with the gnome-tweak-tool:
a. Have file manager handle the desktop.
b. Computer icon visible on desktop.
c. Home icon visible on desktop.
d. Trash icon visible on desktop.
e. Show mounted volumes on the desktop.
f. Fonts. Set the following in place of the default fonts:
|Default font||DejaVu Sans||11|
|Document font||DejaVu Serif||11|
|Monospace font||DejaVu Sans Mono||10|
|Window title font||DejaVu Sans Bold||11|
g. Show date in clock.
h. User themes extension.
i. Menus have icons.
j. Buttons have icons.
7. Install nautilus-open-terminal and gconf-editor and then open gconf-editor to drill down to apps… nautilus-open-terminal. Check “desktop_opens_home_dir” (this will allow you to right-click on the desktop to bring up a terminal that will open up in the root of your home directory instead of the Desktop folder).
8. Install the Applications Menu Gnome Shell extension to get a nice, organized, drop-down menu of installed applications. The only drawback to this is that you need to do an extra click to reveal currently running applications (the obscurely labeled “Activities Overview” item), but that’s a small price to pay for not having to scroll through the entire disorganized list of applications every time you look for something.
9. Mess with whatever else you’d like, such as desktop background, lock screen background and login screen background. Personally the fireworks show artwork didn’t do anything for me so I installed the backgrounds from the solar theme.
yum install solar-backgrounds
To make this the login background for the system:
xhost +SI:localuser:gdm sudo -u gdm dbus-launch gnome-control-center
and then pick your background from the menus available.
The simplest way to change the lock screen background is to backup and then copy over the existing file. This example shows me using the appropriate file from the solar backgrounds package and copying over the “active” background on my system:
cd /usr/share/backgrounds tar czf beefy-miracle.tgz beefy-miracle cp solar/standard/1600x1200/solar-1-noon.png beefy-miracle/default/normalish
The location of the active background file can be found in