Tuesday, September 5, 2017

Fix Screen Tearing on Linux with Intel Graphics Chips



Introduction

I have been using Linux on my laptop with an Intel iGPU for a while, and screen tearing is something that is always present when it comes to testing out new Linux distributions. Whether it be watching a YouTube video, or using your computer normally, screen-tearing gets into everyone's nerves to some degree. So in this article, I will show you how to eliminate the screen tearing on Linux running with Intel GPU hardware.

While there are software solutions that offer OpenGL acceleration and Vsync with compositing software such as Compiz, or Compton, these require additional software. In the method I am using, there will be no such thing, and thus only require copy and pastes on your terminal.

So open up your terminal and get ready to read and type/copy-n-paste (I recommend the latter)!

Disclaimer

I am in no way responsible for you accidentally destroying your device, loss of data, or any harm (mental, physical, whatever) or danger to you. By reading the following instructions, you agree to this statement and accept any consequences that you may endure from this guide.

Have fun! c:

Instructions

Step 1. Check if /etc/X11/xorg.conf.d/ exists:



$ ls /etc/X11/xorg.conf.d

If this directory does not exist, the terminal will output the something like the following: "ls: cannot access '/etc/X11/xorg.conf.d': No such file or directory". This is normal, because distros don't create this to maximise hardware compatibility. Continue to the next step (#2) if it doesn't exist.

If it does exist, it may have contents in it. We are particularly interested in modifying a file called "20-intel.conf" inside this directory, so if it does exist make sure to back it up with the following command:


$ sudo mv /etc/X11/xorg.conf.d/20-intel.conf /etc/X11/xorg.conf.d/20-intel.conf.bak

This will rename it into a file called "20-intel.conf.bak" so we can create a new file with its original name. You can use "sudo mv /etc/X11/xorg.conf.d/20-intel.conf.bak /etc/X11/xorg.conf.d/20-intel.conf" command again to revert it.



At this stage, you have an existing "/etc/X11/xorg.conf.d/" folder, and may have renamed the 20-intel.conf file. Skip the next step.

Step 2. Create /etc/X11/xorg.conf.d/ directory.

$ sudo mkdir /etc/X11/xorg.conf.d/

To validate that you've created it, use the command from the previous step, "ls /etc/X11/xorg.conf.d/". The folder should not have contents in it.

Step 3. Create the configuration file "/etc/X11/xorg.conf.d/20-intel.conf".

To create the configuration file, you can easily use any sudo'd (super-user elevated) text editor and paste the contents from the image below. But if you're lazy like me, you can use the terminal and copy and paste the next commands.



Step 4 (Optional): Validate your are running X with the TearFree option


asdasd