Installing the software
Argyll doesn't come with any installation programs or scripts, so
installation is a manual process. Because things are mostly
self-contained, this isn't particularly onerous. In general the steps
are:
1) Provide somewhere for the executables to reside
2) Provide a means of the shell finding the executables
3) Setup the system to be able to use instruments (USB in particular)
Microsoft Windows:
You will
need
to unzip the downloaded file in the location you have chosen to hold
the
executable files (perhaps somewhere like \bin\argyll). I would NOT put them in \Program Files\argyll,
since spaces in directory or file names and command line environments
are a very bad mix, and will cause you endless problems. You should
also configure your %PATH%
environment
variable to give access to the executables from your command line
environment. Look in
Start->ControlPanel->System->Environment or
Start->ControlPanel->System->Advanced->EnvironmentVariables
for where to add this directory to your %PATH%. Note that a ';' character separates each
directory in the path, and you should probably add your new directory
at the end. The .zip file also contains several useful reference files
(such as
scanner
chart recognition templates, sample illumination spectrum etc.) in the
ref sub-directory, all the current documentation in a doc
sub-directory, and instrument USB drivers in the libusbw directory.
If you are using a serial connected instrument, then there is nothing
special to do to enable this.
If you are using a USB connected instrument, then suitable USB drivers
need to be installed:
If you currently don't have any applications that talk to your
instrument using USB, then it is relatively simple to use the drivers
provided with Argyll. On plugging the instrument in, MSWindows should
pop up a "New Hardware" dialog, and ask you for drivers. Navigate the
dialog until you are able to direct it where to look for drivers. Using
the
"Browse.." selection, locate the libusbw
directory within the argyll files, and select the appropriate
instrument .inf file (ie.
DTP94.inf), and then continue with the installation wizard.
If you currently have applications other than Argyll accessing your USB
connected instrument, then you have a choice to make. You can replace
the existing USB drivers used on that device with the ones provided
with Argyll, using the MSWindows device manager to "update drivers" for
that device, selecting the .inf file provided with Argyll. This will
almost certainly mean that your existing applications cannot access the
instrument anymore (Blame Microsoft for not anticipating that there
might be more than one driver for a USB device!).
The alternative is to go to the libusb-win32 web site, and download and
then install the "filter drivers", - see
<http://libusb-win32.sourceforge.net./#downloads>. This may then
let you access the device using Argyll, without disabling access by
existing applications.
Apple OS X:
You
will need to unzip the downloaded file in the location you have chosen
to hold the executable files. Typically this might be in /usr/local/argyll, or perhaps ~/bin/argyll. You will also have to
configure your $PATH environment variable to give access to the
executables from your command line environment. If you are unfamiliar
with how to do this, consult an appropriate tutorial, e.g. <ShellIntro>.
The .zip file also contains several useful reference files (such as
scanner chart recognition templates, sample illumination spectrum
etc.) in the ref sub-directory, as well as
all the current documentation in a doc sub-directory.
Lunix/UNIX using X11:
You will need to unzip the downloaded file in the location you have
chosen to hold
the executable files. Typically this might be in /usr/local/argyll, or perhaps ~/bin/argyll. You will also have to
configure your $PATH
environment
variable to give access to the executables from your command line
environment.
The .zip file also contains several useful reference files (such as
scanner
chart recognition templates, sample illumination spectrum etc.) in the
ref sub-directory, as
well
as all the current HTML documentation in a doc sub-directory. You may
want to copy things to more standard locations such as /usr/local/bin,
/usr/local/argyll/bin etc., depending on the conventions used on your
system.
If you are using a color instrument on a serial port, note that a
serial mouse may occupy the first port (/dev/ttyS0), so you will have
to discover which physical port maps to which tty, and that if you are
not running as
root, you may have to change the permissions on the serial port you are
using for the instruments. One way of changing the permissions is to do
this manually:
(as root:) chmod 666 /dev/ttyS1
but you may find that this has to be done on every system start. A way
this can be automated is to add the chmod command to the /etc/rc.serial
file (you may have to create this file if it doesn't exist. Check the
/etc/rc.sysinit script, to make sure that the rc.serial file is being
invoked.)
On more modern Linux systems, the serial ports are probably being
created by the udev system, so
modifying the udev configuration is a neater way to go. You could for
example, create a 10-Argyll.permissionsfile:
----------------- cut here ---------------------
# Color instrument serial ports
# Should have an "argyll" group, but do it crudely for
now,
ttyS1:root:uucp:0666
----------------- cut here ---------------------
and then install it as /etc/udev/permissions.d/10-Argyll.permissions, making sure
it has owner root, group root, permissions 644.
USB access has similar permission issues, and these can be solved by
modifying the appropriate hotplug
or udev configuration files.
You need to be running as root to make these changes to your system.
Under older versions of Linux, you should look into the hotplug system
configuration. Assuming we want to configure for an X-Rite DTP94,
create a DTP94.usermap file
containing:
----------------- cut here ---------------------
DTP94 0x0003 0x0765 0xd094 0x0000 0x0000 0x00 0x00
0x00 0x00 0x00 0x00 0x00000000
----------------- cut here ---------------------
and then install as /etc/hotplug/usb/DTP94.usermap,
making sure it has owner root, group root, permissions 644.
(For even older versions, append the line above to
/etc/hotplug/usb.usermap, and you may have to run update-usb.usermap)
Then create a script file called DTP94:
----------------- cut here ---------------------
#!/bin/sh
# Simply enable permissions.
if [ "${ACTION}" = "add" ] && [ -f
"${DEVICE}" ]
then
# Should have a "pci" group,
or "argyll" group, but do it crudely for now,
# by making it world
readable.
# chgrp baz "${DEVICE}"
# chmod 660 "${DEVICE}"
chmod 666 "${DEVICE}"
fi
----------------- cut here ---------------------
and copy it to /etc/hotplug/usb/
too, making sure it has, owner root, group root, permissions 755.
Newer Linux systems use udev in preference to hotplug, so the approach
is slightly different:
[NOTE - I wasn't able to get this to work on my
test system - this could be a bug in udev]
Create 10-DTP94.rules file
containing:
----------------- cut here ---------------------
# udev rule to change permissions so that the DTP94
can be accessed by argyll
# MODE="660", GROUP="argyll" would be better here.
BUS="usb", SYSFS{idVendor}="0765",
SYSFS{idProduct}="d094", MODE="666", NAME="%k"
----------------- cut here ---------------------
and copy it to /etc/udev/rules.d/10-DTP94.rules,
making sure it has owner root, group root, permissions 644.
You need to run /sbin/udevstart
to get the new file
noticed.