From 31a8600ca6272f834a08b350f1bbbd44aa0c8226 Mon Sep 17 00:00:00 2001 From: Richard Hughes Date: Fri, 4 Feb 2011 16:21:11 +0000 Subject: Add the website to revision control --- doc/website/specifics.html | 139 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 139 insertions(+) create mode 100644 doc/website/specifics.html (limited to 'doc/website/specifics.html') diff --git a/doc/website/specifics.html b/doc/website/specifics.html new file mode 100644 index 0000000..a040e4b --- /dev/null +++ b/doc/website/specifics.html @@ -0,0 +1,139 @@ + + + +colord - What is colord? + + + + + +

Back to the main page

+ +

How it works:

+ +

Mapping the device to the profile

+ +

+Preferences are per-user and are stored in GConf in GNOME 2-30, or GSettings in newer versions. +There is need for configuration of devices to profiles, and to store metadata about each device. +This is stored in the colord mapping database, which is +/var/lib/colord/mapping.db by default. +The schema is really simple, and as follows: +

+
+CREATE TABLE mappings (id TEXT PRIMARY KEY,device TEXT,profile TEXT);
+
+ +

+Multiple profiles can of course be assigned to the same device. +Persistent devices and profiles can also be saved to the storage database, which is +/var/lib/colord/storage.db by default. +The schema is really simple, and as follows: +

+
+CREATE TABLE devices (device_id TEXT PRIMARY KEY,device TEXT);
+CREATE TABLE properties (device_id TEXT,property TEXT,value TEXT);
+
+ +

Comparison to UCMM

+

+ucmm (Unix micro Color Management Module) is a color management config file designed just to handle the necessary configuration needed to track the installation and association of ICC profiles with X11 displays. +

+
+{
+  "devices": {
+    "display": {
+      "1": {
+        "EDID": "0x00FFFFFFFFFFFF0034A1731751720000150901010C1F17CDE8A11E9E554A982712474FA4CE0045598180315961590101010101010101000000FE004D6F6E69746F720A2020202020000000FE004D6F6E69746F720A2020202020000000FE004D6F6E69746F720A2020202020000000FE004D6F6E69746F720A2020202020003D",
+        "ICC_PROFILE": "/home/graeme/.local/share/color/devices/display/mon1.icc"
+      },
+      "2": {
+        "NAME": ":0.1",
+        "ICC_PROFILE": "/home/graeme/.local/share/color/devices/display/mon2.icc"
+      }
+    }
+  }
+}
+
+ +The colord database differs from UCMM in the following ways: + + + +

+All that said, UCMM is already used by ArgyllCMS and we should probably +import the existing files on the first run of GCM. +

+ +

Using Elektra

+

+Oyranos puts device settings in the session and system +Elektra database. +Elektra is not a supported library in any mainstream distribution and is +not used by any modern open source projects or frameworks. +GCM will not import settings from Elektra (as this would make GCM itself +depend on Elektra) nor can it propagate settings back into the Oyranos +configuration system. +

+

+Until Oyranos moves away from Elektra there is no way it can work alongside GCM. +The GCM author would be willing to work with the Oyranos developers to +define a standard compatible with both systems, but Elektra is simply +not a viable option for GCM. +

+ +

Setting the system default

+

+One user may want to set the default for all users. +We cannot reference files in /home/foo/.icc/ when logged in +as user bar, as the user will not have access permissions, or in the +worst case, /home/foo may be encrypted and inaccessible even as root. +For this reason, colord copies the ICC profiles to a systemwide directory, +/usr/lib/color that is per-machine and accessible to all users. +

+

+It is encouraged that other CMS implementations also read ICC profiles from the per-machine +/usr/lib/color directory. +

+ +

What the binaries do

+ +

+GCM ships quite a few data files and binary files. Most users will interact with ICC files by double clicking on them, and with color management using ''System->Preferences->Color Profiles''. It's not expected that users should need to run any command line programs at all. +

+ +For interest, the different binaries are listed here. + +

GTK programs

+ + + +

Command line tools

+ + +

Back to the main page

+ + + + + -- cgit v1.2.1