GNOME Custom ICC Profiles for Print Proofing
The GNOME desktop environment handles custom ICC color profiles through a system daemon called Colord, which maps color profiles to displays, printers, and scanners. While GNOME ensures accurate display-level calibration through its native settings, soft proofing for print relies on creative applications utilizing both GNOME-registered monitor profiles and specific printer ICC profiles via color management engines like LittleCMS.
System-Level Color Management with Colord
GNOME does not render print proofs natively at the desktop shell level; instead, it provides the color-managed foundation required for proofing. The underlying infrastructure consists of:
- Colord: A system daemon that manages, installs, and tracks color profiles for connected hardware devices.
- GNOME Settings (Color Panel): The graphical front
end that allows users to import
.iccor.icmfiles and assign them directly to output devices. - Mutter/Wayland/X11: The window manager applies the display profile's Video Card Gamma Table (VCGT) calibration curves to the graphics hardware to ensure neutral grays and accurate white points.
Installing Custom ICC Profiles in GNOME
Custom ICC profiles for both monitors and target print environments can be installed system-wide or per-user.
- User Directory: Place
.iccor.icmfiles into~/.local/share/icc/. - System Directory: Place profiles into
/usr/share/color/icc/for multi-user access. - Settings Interface: Navigate to Settings > Color, select the target display or printer, click Add Profile, and choose the imported file.
Once imported, GNOME validates the profile metadata and registers it with Colord.
Display Calibration vs. Print Proofing
Accurate print proofing requires two distinct color profiles working together:
- The Display Profile: Calibrates the monitor to display true sRGB, DCI-P3, or Adobe RGB colors. GNOME manages this directly, applying tone response curves so the screen behaves predictably.
- The Output (Print) Profile: Characterizes the specific combination of printer model, ink type, and paper stock. GNOME registers these under connected print queues in the Color settings.
How Print Proofing Works in GNOME Applications
Because the desktop compositor focuses on screen rendering, soft proofing (simulating print output on screen) occurs within color-aware applications such as GIMP, Inkscape, Scribus, and Darktable.
These applications interact with GNOME's color infrastructure in three steps:
- Querying the Display Profile: The application detects the active monitor profile assigned by GNOME/Colord.
- Loading the Target Print Profile: The user selects the paper/printer ICC profile (registered via Colord or selected from the local profile directory) as the target proofing profile.
- Gamut Transformation: Using LittleCMS (lcms2), the application transforms the image from its working space into the printer profile's color gamut, using rendering intents such as Perceptual or Relative Colorimetric with Black Point Compensation. It then projects that simulation through the monitor profile provided by GNOME.
This pipeline accurately reveals out-of-gamut colors and simulates paper contrast on the GNOME desktop before sending the job to physical media.