Graeme Gill, 2010-07-27 23:27:58 +1000 : > Alastair M. Robinson wrote: >> functionality is fine, but doing either of these things and calling >> the package "ArgyllCMS" seems to me to be discourteous at best, >> especially when it appears that attempting to use the missing >> functionality just fails silently, without any error message. > > I think that's because it exposes a bug. The upcoming V1.2.0 release will > emit an error message under the same conditions. > > The situation is unfortunate, and I continue to be amazed at the > lack of respect that distro's show for the integrity of upstream > packages. As maintainer of the Debian packages, I freely admit to having been guilty of that in the past. However, the current state of the *.deb sources only differs from upstream on the following points: - a fix for FreeBSD portability: ,---- | --- libusb/bsd.c 2008-11-16 13:45:00 +0000 | +++ libusb/bsd.c 2010-01-25 09:28:26 +0000 | @@ -39,7 +39,7 @@ | #include <sys/time.h> | #include <sys/ioctl.h> | | -#include <dev/usb/usb.h> | +#include <legacy/dev/usb/usb.h> | | #include "usbi.h" | #ifdef HAVE_CONFIG_H `---- - a change in the path where Argyll looks for the Spyder2 firmware (so it complies with the FHS): ,---- | --- spectro/spyd2en.c 2009-11-06 16:34:36 +0000 | +++ spectro/spyd2en.c 2009-11-06 17:03:48 +0000 | @@ -831,7 +831,7 @@ | | /* Create a binary file containing the firmware */ | /* that drivers for the Spyder 2 can use */ | - strcpy(scratch_name, exe_path); | + strcpy(scratch_name, "/var/lib/argyll/"); | strcat(scratch_name, bin_name); | write_bin(scratch_name, fbuf, fsize, verb); | | --- spectro/spyd2setup.h 2009-11-06 16:34:36 +0000 | +++ spectro/spyd2setup.h 2009-11-06 17:03:47 +0000 | @@ -54,8 +54,15 @@ | spyder2_pld_size = &pld_size; | spyder2_pld_bytes = pld_bytes; | | - if (ovrd_exe_path == NULL) | + if (ovrd_exe_path == NULL) { | + int tmp; | + | + if (tmp = setup_spyd2 ("/var/lib/argyll/")) | + return tmp; | + if (tmp = setup_spyd2 ("/lib/firmware/")) | + return tmp; | ovrd_exe_path = exe_path; /* Use global */ | + } | | /* If no firmware compiled in, see if there is a file to load from. */ | if ((pld_size == 0 || pld_size == 0x11223344) && loaded == 0) { `---- - a set of scripts to generate a *.deb containing said Spyder2 firmware and installing it in a FHS-compliant place; in places where several computers may need to use a Spyder2, this package can be installed on all without needing to move the driver CD along; - and the biggest part: a conversion of the build system to autoconf/automake. > There's no doubt that the GPL permits such modifications, although I > am concerned that the conditions under section 5 a) of the GPLV3 are > not being adequately met, and I also wonder whether my moral rights > (which is something that has legal force in many countries) over the > work are being adequately respected. I think you already integrated the patch for the FreeBSD build problem, so it'll disappear at the next release; the location of the firmware is probably a minor point, but I'd be happy to drop that patch too if you could integrate it. Then there would be no functional difference in the sources between your released code and the one in Debian (and Ubuntu, since I think they just take my packages unmodified). As for the build system, let's agree to disagree on what is easier to maintain; I'm happy to maintain the autotools branch up to date, I find it much easier to work with, and the Debian packaging helpers are also more used to standard "configure/make/make install" systems. Roland. -- Roland Mas Just a little bit of you every day will surely keep the doctors away. -- Just a little bit of you (The Jackson Five)