Linux sigue estando muy por detrás de MacOS e incluso de Windows en lo que respecta a garantizar la consistencia de los colores mostrados en el monitor. La adopción ampliamente forzada del servidor gráfico Wayland en la mayoría de las distribuciones de Linux ha dañado aún más esta situación, ya que la gestión del color fue rechazada durante mucho tiempo por los desarrolladores de Wayland. La especificación de un CMS en Wayland se redactó finalmente en 2020 y el código se fusionó en el Wayland oficial (upstream) en 2025, por colaboradores externos, y tras una larga batalla de los desarrolladores del software de CMS anterior contra los desarrolladores históricos de Wayland.1 Desde entonces, el estado del soporte de CMS es muy irregular entre los distintos entornos de escritorio y distribuciones. Y sin embargo, los resultados preliminares de la telemetría de Ansel muestran un 67 % de adopción de Wayland entre los usuarios de Ansel.
No deberías usar Ansel, ni ningún otro software de edición de imágenes, en Wayland.
Note
La situación del CMS de Wayland varía enormemente según la distribución y el entorno de escritorio, y evolucionará en el futuro. En lugar de un panorama completo (que pronto quedaría obsoleto) de lo que funciona y lo que no, presentaré la lista de comprobación que necesita validarse para plantearse usar Wayland.Resumen: ¿por qué no usar Wayland en Linux?
Porque el propio autor del sistema de gestión del color de Wayland dijo que no está ni de lejos listo para uso profesional de fotografía y vídeo.1
Para uso de consumo y entretenimiento, puedes comprobar el estado del soporte de CMS de Wayland en tu compositor de escritorio en la documentación de Wayland .
El problema
La mayoría (si no todas) de las pantallas de portátiles y muchos monitores de nivel de consumo tienen un punto blanco mucho más azul que el estándar de 6500 K, en algún punto entre 6800 K y 7200 K. Para corregir esto, la forma histórica es calibrar la pantalla y escribir las curvas de calibración en la tabla gamma de la tarjeta de vídeo (VCGT) . La VCGT es a la vez:
- un campo de datos especial dentro de los perfiles ICC,
- una región de memoria especial en tu GPU.
Al iniciar tu sesión de Linux, algún software lee la VCGT desde un perfil ICC y la carga en la memoria de vídeo real. De modo que todo el escritorio tendría su punto blanco y su curva de contraste corregidos en un único paso automático, tanto si las aplicaciones estuvieran “gestionadas por color” como si no.
Más tarde, muchos applets llamados “night color” o “redshift” manipularon la VCGT para desplazar los colores hacia el ámbar por la tarde y por la noche, porque se sabe que la luz azul(ada) altera los patrones de sueño y, aunque es excelente para tu ritmo circadiano, añade una capa de aleatoriedad al pipeline de color. Además, la VCGT podía perderse sin previo aviso al reanudar desde el modo de suspensión, y varias aplicaciones podían competir por ser la última en sobrescribirla. El auge de los sistemas con doble GPU (dedicada + integrada) no ayudó en nada a la fiabilidad del pipeline de color, y el controlador propietario de Nvidia sigue siendo el único que permite previsualizar la VCGT.
Pero la conclusión es: necesitas algún tipo de mecanismo a nivel de todo el sistema para cargar una VCGT que normalice el punto blanco,2 y Xorg/X11 tenía colord para anunciar globalmente un perfil de pantalla del sistema que las aplicaciones podían obtener.
Por encima de la VCGT, que contiene la calibración, viene el perfilado que corrige las primarias de color nativas de la pantalla, de modo que los tripletes RGB coincidan con el espectro de luz al que están asociados. En resumen:
- fijar el punto blanco de la pantalla en 6500 K y linealizar la respuesta de brillo es la primera etapa (calibración),
- fijar las primarias de color de la pantalla para reducir las desviaciones de tono y saturación es la segunda etapa (perfilado).
El perfilado suele ser una matriz de color de 3×3, a veces con curvas o gamma adicionales, pero también puede ser una LUT (no recomendado en Ansel).
Cuando un fotógrafo “calibra” su pantalla, en realidad ambas etapas se realizan y se guardan normalmente de forma silenciosa en el mismo perfil ICC. Hay una manera, en particular en Display Cal, de desactivar la calibración a través de la VCGT, que entonces la incorpora al perfilado como un conjunto, pero esto es en general una muy mala idea porque entonces los colores del tema de la interfaz quedan excluidos de la adaptación del punto blanco incluso en Xorg.
Note
Al contrario de lo que se cree comúnmente, los perfiles ICC no son más que un descriptor (una especie de archivo de metadatos), que los programas reales eligen aplicar (y eligen cómo). No son un software en sí mismos.A nivel de aplicación, solo podemos aplicar la etapa de perfilado sobre las imágenes. Esto tiene 2 implicaciones:
- La validez cromática de la etapa de perfilado depende de que la etapa de calibración se realice correctamente a nivel de la VCGT. El perfilado se vuelve impredecible e inexacto sin su calibración gemela: es un pipeline.
- No podemos corregir/gestionar el color de los colores de la interfaz del tema de la aplicación (en particular: el color de fondo) declarados en la hoja de estilos CSS y transmitidos a Gtk.
Esto es un problema en Ansel porque establecemos toda la interfaz en gris neutro, con fines de evaluación del color, y necesitamos que este gris sea de 6500 K, pero también consistente con el punto blanco de la imagen. Así que necesitamos una gestión del color de todo el escritorio, al menos para la calibración, para evitar puntos blancos discordantes entre ventanas. Algo que el diseño inicial de Wayland explícitamente considera que no es asunto suyo, confiando en que los desarrolladores de aplicaciones hagan lo correcto (como si…).
Y luego, por último pero no menos importante, si usas varios monitores, necesitas algún software que asigne un perfil ICC a cada monitor, de modo que el CMS pueda tomar el perfil correcto para el monitor donde se encuentra la ventana de tu aplicación.3 Que es lo que Wayland prohíbe explícitamente por razones de “seguridad”.
Lo que debes comprobar si usas Wayland
Lo que sigue asume que calibraste y perfilaste tu monitor con un colorímetro, y produjiste un perfil ICC de pantalla que neutraliza las desviaciones de color de tu monitor.
- Comprueba que cada monitor tiene su calibración cargada desde el perfil ICC en la VCGT al iniciar una sesión gráfica
- Esa parte parece estar bastante cubierta a fecha de 2026, al menos para los principales actores Gnome/KDE Plasma. El entorno de escritorio permite definir un perfil de sistema que cambiará globalmente el punto blanco de todas las aplicaciones.
- Si no, el comando
dispwindel softwareargyllcmspermite cargarlo manualmente, comodispwin -d 1 ~/.local/share/icc/YOUR_DISPLAY_PROFILE.icc. “Basta” con crear un script y hacer que el script se inicie automáticamente con tu sesión, lo que excluye a cualquier usuario no familiarizado con la creación de scripts. Comprueba que cada monitor está etiquetado con un perfil de color- Esta parte se elimina explícitamente del protocolo Wayland, por lo que a las aplicaciones se les prohíbe, por diseño, obtener información sobre las pantallas. En particular, iniciar
ansel-cmstesten Wayland devolverá:1$ /opt/ansel/bin/ansel-cmstest 2ansel-cmstest version 0.0.0+3877~gcfa6648f92 3this executable was built with colord support enabled 4ansel itself was built with colord support enabled 5 6primary CRTC is at CRTC 0 7 8eDP-1 the X atom and colord returned the same profile 9 X atom: _ICC_PROFILE (0 bytes) 10 description: (none) 11 colord: "(none)" 12 description: (file not found) 13 14Better check your system setup 15- some monitors lacked a profile 16You may experience inconsistent color rendition between color managed applications - Esto significa en la práctica que el perfil de sistema (por defecto) de Ansel, que se supone que se detecta automáticamente a través de
colordoxatomen X11/Xorg, está vacío/indefinido todo el tiempo en Wayland y necesitarás:- añadir tu perfil de pantalla en
~./config/ansel/color/out, - elegirlo manualmente en el menú global Pantalla -> Perfil de color del monitor,
- cambiarlo manualmente si/cuando muevas la ventana de Ansel a un monitor diferente.
- añadir tu perfil de pantalla en
- No hacerlo hará que Ansel use sRGB por defecto como espacio de color de salida. Si la gama nativa de tu pantalla es:
- Adobe RGB, entonces los colores de la región verde-cian aparecerán más saturados en pantalla de lo que están en el archivo,
- Display P3, entonces todos los colores aparecerán más saturados en pantalla de lo que están en el archivo, pero la región naranja-verde-cian será también la peor afectada.
- Este problema no tiene solución dentro de GTK3, que Ansel usa como kit de herramientas gráficas, e incluso con GTK4, todavía no hay ninguna solución viable y ampliamente soportada por ahora. La gestión manual de los perfiles de color en Ansel funciona hasta que los compositores empiecen a gestionar activamente el color de las ventanas de las aplicaciones por sí mismos: entonces GTK3 no ofrece ninguna manera de etiquetar una ventana como “ya gestionada por color”, para evitar que el compositor les cause más daño. En su lugar, duplicará las conversiones de espacio de color que ya hicimos internamente y estropeará los colores de una forma que solo los expertos serán capaces de detectar. Por suerte para nosotros, a mediados de 2026, ningún compositor es capaz de gestionar el color de nada.
- En cualquier caso, las conversiones manuales de espacio de color solo se pueden hacer sobre las superficies de imagen que pintamos en la ventana de la aplicación Ansel. No tenemos ningún control sobre los colores de los controles de la interfaz definidos en la hoja de estilos del tema (
ansel.css), y gestionados directamente por los widgets de GTK, que son implícitamente sRGB (según el estándar CSS). Es decir, los colores de la interfaz siempre se verán sobresaturados si la gama nativa de tu monitor es mayor que sRGB, en comparación con lo que se pretende que sean. - Comprueba que el soporte de HDR está desactivado
- Wayland ahora admite capacidades HDR manipulando la retroiluminación de la pantalla. Aunque Ansel produce el clásico RGB de 8 bits y no debería activar los mecanismos de HDR, el HDR no forma parte de ICC v2 ni v4 y no hay forma de saber cómo afectaría esta función a la respuesta tonal. Puede que sea inofensivo, pero hasta que esto se audite a fondo, el camino seguro es mantener el HDR desactivado.
- Comprueba que estás usando Xorg
- En serio, simplemente no uses Wayland para fotografía.
Translated from English by : ChatGPT, Claude. In case of conflict, inconsistency or error, the English version shall prevail.
Pekka Paalanen, 12 years of incubating Wayland color management, February 2025. URL ↩︎ ↩︎
The contrast/brightness curve is not so much of an issue on LED screens that are, by nature, close to linear. ↩︎
And since Xorg as well as Wayland allow application windows to sit on multiple monitors at once, you can only guess which color profile is going to be applied. ↩︎