LdmGLXManager

LdmGLXManager — GL(X) configuration management

Functions

Object Hierarchy

    GObject
    ╰── LdmGLXManager

Description

An LdmGLXManager is used to manage the X11 configuration for the OpenGL providers, i.e. GLX implementations such as the NVIDIA proprietary driver. It is assumed that the host system is using automatically managed drivers for the most part, i.e. glvnd style, and not "alternatives" style.

The older versions of LDM would manually manage the GL links, but this has been dropped in favour of static packaging and GLVND. While GLVND isn't a strict requirement, it is recommended.

LdmGLXManager will remove existing X11 configurations if they reference a driver that isn't considered valid, such as /etc/X11/xorg.conf, and manage a single snippet within /etc/X11/xorg.conf.d/00-ldm.conf. This snippet will contain the bare minimum to "enable" the drivers.

Additionally a hybrid control file is written in the presence of enabled NVIDIA Proprietary drivers for Optimus systems. This control file is used by ldm-session-init(1) to provide xrandr bootstrap during the early initialisation of an X11 desktop session.

This manager does not, and will not, control the specifics for Wayland. It is assumed that Wayland compositors will set up offscreen surfaces with libGL_nvidia via glvnd and then render the final result to the Intel device GL context (libGL_mesa). For non Optimus systems they would simply use the primary GPU and GL implementation.

Functions

ldm_glx_manager_new ()

LdmGLXManager *
ldm_glx_manager_new (void);

Create a new LdmGLXManager instance

Returns

An LdmGLXManager instance.

[transfer full]


ldm_glx_manager_apply_configuration ()

gboolean
ldm_glx_manager_apply_configuration (LdmGLXManager *manager,
                                     LdmGPUConfig *config);

Attempt to apply the primary portion of the configuration per the systems current configuration. If proprietary drivers are installed and enabled, they will be configured. If an Optimus system is encountered then it will also be configured in X11, and in the installed display manager configurations.

If it is not possible to "install" a configuration, then any changes we may have made will be immediately unapplied and we'll go back to a "stock" configuration that intentionally removes any enabling for the proprietary drivers we may have applied.

This should only happen when the module isn't present for the primary detection device.

Parameters

config

Valid LdmGPUConfiguration

 

Types and Values

See Also

LdmGPUConfig