Skip to main content

🟢 Nvidia Digital Vibrance on Wayland

Project description

nvibrant

Configure Nvidia's Digital Vibrance on Wayland



🔥 Description

NVIDIA GPUs have a nice feature called Digital Vibrance that increases the colors saturation of the display. The option is readily available on nvidia-settings, but is too coupled with libxnvctrl, making it softly "exclusive" to the X11 display server over wayland; but I paid for my pixels to glow :^)

An interesting observation is that the setting persists after modifying it on X11 and then switching to Wayland. I theorized (1) (2) it was possible to call some shared library or interface to configure it directly in their driver, independently of the display server, and indeed, it is possible!

This project uses nvidia-modeset and nvkms headers found at nvidia/open-gpu-kernel-modules to make ioctl calls in the /dev/nvidia-modeset device for configuring display attributes.

Note: A future intended way will be through NVML, as evident by some nvidia-settings comments

❤️ Consider supporting my work, this took 30 hours to figure out, implement, write a website, make it convenient 🫠

📦 Getting Started

Visit the documentation at https://nvibrant.tremeschin.com/

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nvibrant-1.2.1-py3-none-manylinux_2_17_x86_64.whl (1.2 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

File details

Details for the file nvibrant-1.2.1-py3-none-manylinux_2_17_x86_64.whl.

File metadata

  • Download URL: nvibrant-1.2.1-py3-none-manylinux_2_17_x86_64.whl
  • Upload date:
  • Size: 1.2 MB
  • Tags: Python 3, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.16 {"installer":{"name":"uv","version":"0.11.16","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for nvibrant-1.2.1-py3-none-manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 d14ed6976e59ac89e2a518ddb24c633f72fd841639ef14aac7412501ca2cd699
MD5 6e91fdb55cfcc287fd1413171fe5550d
BLAKE2b-256 eba977f223e0e2b3d280aa09f47aecdc516ab02a98a266ac586f35c6fdf01af9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page