How to Install Compiz and Emerald on CentOS 7

Pratik MPratik M
3 min read

Compiz and Emerald are useful tools for customizing the Linux desktop environment. Compiz provides various desktop effects and Emerald is a window decorator that enhances the appearance of application windows. CentOS 7 has a minimal desktop interface by default so installing Compiz and Emerald can greatly improve its looks and usability.

This guide will walk through installing and configuring Compiz and Emerald in CentOS 7 using the command line.

Prerequisites

  • CentOS 7 server with a user account that has sudo privileges

  • Basic command line knowledge

Step 1 – Add the ELRepo Repository

The EPEL and ELRepo repositories are needed to download Compiz and Emerald. Run these commands to enable them:

sudo yum install epel-release 
sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
sudo yum install -y https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm

Step 2 – Install Compiz and Emerald

Use yum to install Compiz, Emerald, and their dependencies:

sudo yum install compiz-manager compizconfig-python compiz-plugins-extra emerald libcompizconfig

Step 3 – Install Graphics Drivers

For full Compiz functionality, proprietary graphics drivers are recommended. For NVIDIA cards install:

sudo yum install kmod-nvidia

For AMD graphics install:

sudo yum install xf86-video-amdgpu

Step 4 – Create a Compiz Fusion Startup Script

To load Compiz instead of the default Mutter window manager when logging into the desktop environment, a custom session startup script is needed.

Create and open the script:

sudo nano /usr/bin/startcompiz

Paste in the following and save and close:

#!/bin/bash

# Start Compiz
compiz --replace ccp &

# Bring up Emerald theme manager 
emerald --replace &

Make the script executable:

sudo chmod +x /usr/bin/startcompiz

Step 5 – Configure GUI Session

There are now two options to load the customized Compiz and Emerald session:

A) Select “Compiz” from the session menu when logging into the GUI desktop.

B) Set Compiz fusion to startup by default for GUI sessions by entering this command:

sudo nano /usr/share/xsessions/custom-compiz.desktop

Then paste this and save and close:

[Desktop Entry]
Name=Compiz
Comment=Compiz fusion session
Exec=/usr/bin/startcompiz
Type=Application

Now Compiz and Emerald will be loaded by default on GUI login instead of CentOS’s basic Mutter window manager.

Conclusion

Adding Compiz and Emerald greatly improves the look and feel of the desktop environment in CentOS 7. Customizing the extensive options in CompizConfig Settings Manager and downloading Emerald themes makes the interface much more modern and usable.

With the repositories enabled and startup scripts in place, Compiz and Emerald will seamlessly launch whenever logging into the CentOS desktop without having to manually run commands each time. The fusion of Compiz and Emerald truly enhances the basic CentOS 7 GUI to be aesthetically and functionally superior for daily use.

0
Subscribe to my newsletter

Read articles from Pratik M directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Pratik M
Pratik M

As an experienced Linux user and no-code app developer, I enjoy using the latest tools to create efficient and innovative small apps. Although coding is my hobby, I still love using AI tools and no-code platforms.