[Openicc] GSoC 2013 preparations

Graeme Gill graeme at argyllcms.com
Mon Mar 18 17:33:22 PDT 2013


Richard Hughes wrote:

Hello Richard,

> * yajl isn't a standard dep on most systems
> * JSON isn't a database
> * /etc is for configuration, not databases

The device<->profile information is not really complicated enough
to justify calling it a database though - it's perhaps more
dynamic than "configuration", but not more complicated than it,
and it's not unreasonable to regard using a fully fledged database
as overkill.

ucmm has historical precedence over whatever colord does. In addition,
I went to some trouble to pick standard and appropriate technologies,
and make them available in a form that would invite others
to build on them. I could have invented a new configuration
format (say, like udev has done), and just coded it all
in the most expedient way for my use, but instead I chose JSON
as more concise, readable and appropriate than (say) XML.
I documented the schema, and made available a library
that took care of all the hard work under a free use licence.

It's OK to revisit all this, but the onus is really on you to
make a case for change to a database.

> There would have to be a very compelling reason for colord to switch
> away from the sqlite database we have now. In Fedora we turn off the

See above. colord is the newcomer. Having played with sqlite some
more since the last discussion on this topic, I'm more comfortable
with the idea of adopting it (my main reservation being the
binary nature of it - the difficulty in examining and
editing it - shades of MSWin's registry, without a built in regedit
tool), and I do like the way it takes care of the locking issues, but
the problem is really one of "if it ain't broke, don't fix it". It
needs to be easy to change over to it. And at the database
level it needs to be system independent, ie. just an sqlite file,
no implied dbus etc.

So three questions I have are:

* Is the schema documented somewhere ?
* Is there a process for making changes to the schema in
  a collaborative manner (ie. an RFC like process) ?
* Is there a library built over sqlite and available under a free
  use license (ie. MIT/BSD) to make it dead easy to read and write the
  information progromatically ?

> ucmm library for Argyllcms, and in my opinion the number of users

And I continue to object to this. It causes problems, and isn't
the right fix.

> using Oyranos and colord at the same time is not significant enough
> for the pain of migrating settings and maintaining backwards
> compatibility.

The problem is that I feel the same way. ArgyllCMS works fine as it is
- why should I change anything, especially since the Linux version
is the least popular ?

> Just deciding on something as simple as the primary
> keys for storage has traditionally been impossible between oyranos and
> colord and so I think this item should be removed from the wiki.

That's a bit of a show stopper problem then.

Graeme Gill.


More information about the openicc mailing list