[argyllcms] Re: Argyll CMS in Fedora (and Mandriva)

  • From: Nicolas Mailhot <nicolas.mailhot@xxxxxxxxxxx>
  • To: argyllcms@xxxxxxxxxxxxx
  • Date: Fri, 14 Dec 2007 11:09:45 +0100

Le vendredi 14 décembre 2007 à 13:46 +1100, Graeme Gill a écrit : 
> Nicolas Mailhot wrote:
> > Patrice: it took three people from two different distributions to hammer
> > what we have in Fedora now, any one of us would have given up without
> > the others. Honestly if you're new to packaging you're going to suffer
> > more than a week, Argyll is *hard*. Or just alien one of our rpms.
> 
> It's pretty straight forward from a code point of view,

Unfortunately that's not the case from a packaging point of view. That's
been my experience and that of all the other people I know who tried to
package argyll. Why do you think that despite being there for a decade,
and pointed to in every CMS howto in the web, Argyll had not been 
included in any distribution till very recently?

> The chief problem with 99% of build systems is
> that they are not modular, they all assume a top down description of a
> project, which makes it hard to maintain.

jam may be modular internally but it assumes a static environment which
makes it very hard to get it to use system libraries instead of internal
copies.

> I'm hoping bjam is moving
> in the right direction, and I'd imagine the boost libraries are
> pretty widely used.

We have one person trying to package bjam at Fedora, if Argyll moves to
bjam I'll poke him but that also means no one but boost uses bjam right
now.

> Are you saying the usb_detach_kernel_driver_np() doesn't work
> correctly on all systems, or is there some other issue ?

It's a workaround. We hate workarounds Fedora-side. Things should "just
work" without bandaids. Just blacklist the thing upstream.

http://lkml.org/lkml/2007/12/14/79

> > I've reworked the perm files in my latest dump
> > http://nim.fedorapeople.org/argyllcms/
> > after consulting David Zeuthen of PolicyKit fame (after some nudging by
> > Frédéric). They should be pretty authoritative for any modern distro, as
> > PolicyKit is supposed to be the Linux desktop Future®
> 
> Perhaps you can point me to some doco on the sub-system
> that uses the .fdi files, as I'm unfamiliar with them ?

fdi files are hal files and the exact hal layer that manages permissions
is PolicyKit

http://freedesktop.org/wiki/Software/hal
http://people.freedesktop.org/~david/talks/system-integration-and-gnome-guadec2006-davidz.pdf
http://gitweb.freedesktop.org/?p=PolicyKit.git;a=summary

Unfortunately documentation is somewhat the weak point of those efforts.
> 
> > Ideally we do a ./configure make make install and let the
> > upstream-provided build scripts pick up and link against our system
> > libs. On modern systems pkg-config is pervasive and used by configure
> > and friends to pick up the right build/link flags
> 
> Sorry, Jam is much more lightweight to install that ./configure etc.
> on MSWindows, and I'd much rather deal with maintaining a single
> system that runs across all platforms, rather than also trying to
> maintaining one that's essentially confined to UNIX type systems.
> 
> I'm open to other suggestions though, about how to make the Jamfiles
> more friendly towards system installed libraries.

Anything which is able to detect system libraries and their build flags
through pkg-config will do fine. It seems to me Jam is lightweight at
the expense of every facility packagers expect in modern software.

A switch that makes argyll use dynamic linking internally would help
too. Separate dynamic libraries make license auditing easier (BTW you
haven't answered whether the GPVv2 files listed in the doc are also
GPLv3 licenced or not. If not you have a licensing conflict)

Regards,

-- 
Nicolas Mailhot

Other related posts: