You are not logged in.

#1 2015-08-13 17:22:49

shoober420
Banned
Registered: 2014-07-22
Posts: 184

Purpose of MESA when using proprietary graphics drivers

I don't fully understand the graphics stack for Linux. When using proprietary graphics drivers, why is MESA needed? I know MESA has an influence somewhere, since a git build of MESA from a while back would cause a game to stutter when i earned a Steam achievement. It was fixed a week later in a more recent git build. I dont use the open source drivers, so i dont know what MESA is needed for when using propietary graphics drivers. I have googled this, and haven't found a definitive answer.

Last edited by shoober420 (2015-08-13 17:36:00)

Offline

#2 2015-08-13 21:11:47

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,911

Re: Purpose of MESA when using proprietary graphics drivers

Linux graphics stack is complicated, a typical stack looks like this :

Kernelland :
1. kernel modules to allow the OS to interact with hardware

Userland

2. windowing system - Xorg
3. OpenGL provider - mesa
4 . driver - open source or proprietary.

The proprietary drivers include 1 and 4 , but not 2 and 3 .

A more practical approach :

nvidia needs nvidia-utils
if you want to use nvidia-xconfig from nvidia-utils , you need xorg-server-devel
xorg-server-devel needs mesa

IN THEORY if you never need to use nvidia-xconfig , you might be able to remove xorg-server-devel and mesa.

TL;DR : proprietary drivers use code from Xorg/mesa .

Sidenotes :
mesa also supports wayland and mir, so even if we get rid of Xorg on linux, mesa will still be there.

Vulkan requires EGL support, which is also delivered by mesa

There have been other OpenGL providers for linux in the past, but they all went the way of the dodo.


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#3 2015-08-13 21:45:20

Gusar
Member
Registered: 2009-08-25
Posts: 3,605

Re: Purpose of MESA when using proprietary graphics drivers

@Lone_Wolf:
Your point 3 isn't correct, mesa is just one possible OpenGL provider. Proprietary drivers provide their own OpenGL implementation (that's why the mesa-libgl and nvidia-libgl packages that can't be installed at the same time), so they do include 3.

xorg-server-devel depends on mesa so you can build glamor support into X. But that doesn't mean nvidia-xconfig is using anything from mesa. It isn't. Nvidia doesn't use glamor. So no, proprietary drivers don't use anything from mesa.

Also, that mesa supports wayland and mir is irrelevant to proprietary drivers. They'll bring their own wayland/mir support, just like they bring their own X support. Even in the open source world mesa isn't a strict requirement for wayland, for example the Weston compositor has a pixman backend, allowing it to run in pure software mode.

That Vulkan is tied to EGL is also irrelevant, as again proprietary drivers bring their own EGL.


@shoober420:
Mesa and proprietary drivers are completely separate. It's impossible that building a newer mesa had an effect on Steam if you're using the nvidia blob, there must have been other changes in the same time frame that affected Steam.

Offline

#4 2015-08-14 15:46:18

shoober420
Banned
Registered: 2014-07-22
Posts: 184

Re: Purpose of MESA when using proprietary graphics drivers

I have a feeling if I uninstall mesa, xorg server will fail to start. Could anyone walk me through how to start xorg server without having mesa installed?

Offline

#5 2015-08-14 16:48:16

Gusar
Member
Registered: 2009-08-25
Posts: 3,605

Re: Purpose of MESA when using proprietary graphics drivers

Xorg will work just fine without mesa. You start it... just like you're starting it now. The only part of X that depends on mesa is glamor. But like I said, proprietary drivers don't use glamor.

The only problem you might have when trying to remove mesa is that cairo has a direct dependency on it. No idea why that is. So just force remove mesa and see what you'll get. It shouldn't make any difference.

Offline

#6 2015-08-14 20:53:48

shoober420
Banned
Registered: 2014-07-22
Posts: 184

Re: Purpose of MESA when using proprietary graphics drivers

Awesome, I removed MESA and xorg starts just fine. Thanks guys

Offline

#7 2015-08-14 21:41:14

brebs
Member
Registered: 2007-04-03
Posts: 3,742

Re: Purpose of MESA when using proprietary graphics drivers

Nvidia does not provide a replacement for libOSMesa.so, which e.g. wine can use.

Xorg will need mesa's headers, to compile, e.g. /usr/include/GL/glx.h

Offline

#8 2017-03-30 05:21:20

sam26
Member
Registered: 2017-03-30
Posts: 1

Re: Purpose of MESA when using proprietary graphics drivers

shoober420 wrote:

Awesome, I removed MESA and xorg starts just fine. Thanks guys

Hi I am trying to uninstall mesa too. How exactly have you done it. Because, when I am trying to uninstall using apt-get purge, some of the additional packages are getting installed ( I'm assuming it because the packages dependent on mesa need an alternate set of packages to work if mesa is to be removed ). If that is the case, are these packages safe to be installed ,i.e, won't they interfere with NVIDIA drivers as such?

Last edited by sam26 (2017-03-30 05:24:09)

Offline

#9 2017-03-30 05:35:01

Scimmia
Fellow
Registered: 2012-09-01
Posts: 11,544

Re: Purpose of MESA when using proprietary graphics drivers

sam26 wrote:
shoober420 wrote:

Awesome, I removed MESA and xorg starts just fine. Thanks guys

Hi I am trying to uninstall mesa too. How exactly have you done it. Because, when I am trying to uninstall using apt-get purge, some of the additional packages are getting installed ( I'm assuming it because the packages dependent on mesa need an alternate set of packages to work if mesa is to be removed ). If that is the case, are these packages safe to be installed ,i.e, won't they interfere with NVIDIA drivers as such?

So not only did you necrobump (see https://wiki.archlinux.org/index.php/Co … umping.22), you're not even running Arch (see https://wiki.archlinux.org/index.php/Co … 2Aonly.2A)

Offline

#10 2017-03-30 06:02:25

jasonwryan
Anarchist
From: .nz
Registered: 2009-05-09
Posts: 30,424
Website

Re: Purpose of MESA when using proprietary graphics drivers

Closing


Arch + dwm   •   Mercurial repos  •   Surfraw

Registered Linux User #482438

Offline

Board footer

Powered by FluxBB