You are not logged in.

#1 2007-06-01 06:09:30

frigg
Member
From: Germany, Europe
Registered: 2006-10-30
Posts: 46

different packages but binaries with the same name

Hi there,

I created a package for the ArgyllCMS /see my post before) Color Management system which supports the hardware calibration of displays, printers and scanners. This Package is not for substituting LittleCMS (lcms)!

Unfortunatley ArgyllCMS includes a /usr/bin/icclink and lcms include this binary, too. Is there an advice or rule how to work around this problem?

regards,

Frank

Offline

#2 2007-06-01 06:46:41

tardo
Member
Registered: 2006-07-15
Posts: 526

Re: different packages but binaries with the same name

delete them

Offline

#3 2007-06-01 07:09:19

frigg
Member
From: Germany, Europe
Registered: 2006-10-30
Posts: 46

Re: different packages but binaries with the same name

Hi tardo,

"them" ? you mean both binaries?

Unfortunatley the two icclink binaries has different options parameters.

Another tipp?

regards,

Frank

Offline

#4 2007-06-01 07:46:34

tardo
Member
Registered: 2006-07-15
Posts: 526

Re: different packages but binaries with the same name

how do you mean different options? is it built differently? or is it a different version?
If it is something that the lcms package can be changed to accomodate, file a bug report asking for that feature.

The only other option I see is renaming the file and changing the appropriate paths/names in the CMS software.

Offline

#5 2007-06-01 07:54:42

mitsoko
Banned
From: In the Coal Chamber
Registered: 2007-05-08
Posts: 143

Re: different packages but binaries with the same name

if it functions without a dependency on lcms and provides the functionality of lcms  and has fs conflicts with lcms it must replace lcms ...
if that's not an option then tardo's second comment is the way to go.

Offline

#6 2007-06-01 07:57:38

tardo
Member
Registered: 2006-07-15
Posts: 526

Re: different packages but binaries with the same name

if you go with raeven's first option, make sure you add conflicts=('lcms') and provides=('lcms') to your pkgbuild (I would also make sure that it provides all the necessary libraries).

Offline

#7 2007-06-01 08:01:19

frigg
Member
From: Germany, Europe
Registered: 2006-10-30
Posts: 46

Re: different packages but binaries with the same name

Hi tardo,

tardo wrote:

how do you mean different options? is it built differently? or is it a different version?

lcms and argyllcms are totally different packages. lcms is build with configure, make,... and argyllcms is build with the JAM-Buildsystem.

man lcms:
OPTIONS
       -8     Creates 8-bit devicelink.

       -b     Black point compensation.

       -c <0,1,2,3>
          Precission (0=LowRes, 1=Normal, 2=Hi-res). [defaults to 1]

       -d description
          Description text (quotes can be used).

       -h <0,1,2,3>
          Show summary of options and examples.

       -i profile
          Input profile (defaults to sRGB).

       -k <0..400>
          Ink-limiting in % (CMYK only)

       -o profile
          Output devicelink profile. [defaults to 'devicelink.icm']

       -t <0,1,2,3>
          Intent (0=Perceptual, 1=Colorimetric, 2=Saturation, 3=Absolute).

       -x     Creatively, guess deviceclass of resulting profile.

"man" argyllcms:
icclink [-options] inprofile outprofile linkedprofile
-v             Verbose
-V             Verify existing profile, rather than link (Debug option)
-q lmhu        Quality - Low, Medium (def), High, Ultra
-r res         Override clut res. set by -q
-n             Don't preserve device curves in result
-f             Special :- Force neutral colors to be K only output.
-F             Special :- Force all colors to be K only output.
-p aprof.icm   Include abstract profile in link
-s             Simple Mode (default)
-g [src.gam]   Gamut Mapping Mode [optional source image gamut]
-G [src.gam]   Gamut Mapping Mode using inverse outprofile A2B [optional source gamut]

     Simple Mode Options:
-i in_intent      p = perceptual, r = relative colorimetric,
                   s = saturation, a = absolute colorimetric
-o out_intent     p = perceptual, r = relative colorimetric,
                   s = saturation, a = absolute colorimetric

     Mapping Mode Options:
-i intent      set linking intent from the following choice:
              a - Absolute Colorimetric (in Jab) [ICC Absolute Colorimetric]
             aw - Absolute Colorimetric (in Jab) with scaling to fit white point
             aa - Absolute Appearance
              r - White Point Matched Appearance [ICC Relative Colorimetric]
             la - Luminance matched Appearance
              p - Perceptual (Preferred) [ICC Perceptual]
             ms - Saturation
              s - Enhanced Saturation [ICC Saturation]
             al - Absolute Colorimetric (Lab)
-w [J,a,b]     Use forced whitepoint hack [optional color to map the white to]
-c viewcond    set input viewing conditions for CIECAM02,
                  either an enumerated choice, or a parameter
-d viewcond    set output viewing conditions for CIECAM02,
                  either an enumerated choice, or a parameter:value change
              pp - Practical Reflection Print
              pe - Print evaluation environment
              mt - Monitor in typical work environment
              mb - Monitor in bright work environment
              md - Monitor in darkened work environment
              jm - Projector in dim environment
              jd - Projector in dark environment
             pcd - Photo CD - original scene outdoors
              ob - Original scene - Bright Outdoors
              cx - Cut Sheet Transparencies on a viewing box
          s:surround a = average, m = dim, d = dark,
                     c = transparency (default average)
          w:X:Y:Z       Adapted white point as XYZ (default media white)
          w:x:y         Adapted white point as x, y
          a:adaptation  Adaptatation luminance in cd.m^2 (default 50.0)
          b:background  Background % of image luminance (default 20)
          f:flare       Flare light % of image luminance (default 1)
          f:X:Y:Z       Flare color as XYZ (default media white)
          f:x:y         Flare color as x, y
-t tlimit      set input total ink limit, 0 - 400% (estimate by default)
-T klimit      set input total ink limit, 0 - 100% (estimate by default)

       Inverse outprofile A2B Options:
-k tezhxr        CMYK Black generation
                  t = transfer K from input to output, e = retain K of output B2A table
                  z = zero K, h = 0.5 K, x = maximum K, r = ramp K (default)
-k p stle stpo enpo enle shape
                  p = black level generation curve parameters
-k q stle0 stpo0 enpo0 enle0 shape0 stle2 stpo2 enpo2 enle2 shape2
                  q = transfer input K to dual curve limits
-K parameters  Same as -k, but target is K locus rather than K value itself
-l tlimit      set output total ink limit, 0 - 400% (estimate by default)
-L klimit      set output total ink limit, 0 - 100% (estimate by default)


tardo wrote:

If it is something that the lcms package can be changed to accomodate, file a bug report asking for that feature.
The only other option I see is renaming the file and changing the appropriate paths/names in the CMS software.

Well these are standalone binaries. It might be OK to delete an existing lcms icclink binary and the appropriate man page and install the argyllcns icclink binary instead. This leads to following queston:
In PKGBUILD -> install=argyllcms.install
Is a funktion:
pre_install() {
  if [ -e /usr/bin/icclink ]; then
      rm /usr/bin/icclink
  fi
  if [ -e /usr/share/man/man1/icclink.1.gz ]; then
      rm /usr/share/man/man1/icclink.1.gz
  fi
  if [ -e /usr/share/man/man1/icclink.1 ]; then
      rm /usr/share/man/man1/icclink.1
  fi
}
valid in the file argyllcms.install?

regards

Offline

#8 2007-06-01 08:10:13

frigg
Member
From: Germany, Europe
Registered: 2006-10-30
Posts: 46

Re: different packages but binaries with the same name

Another problem is that argyllcms provides neither an *.a no an *.so library. LittleCMS (lcms) provides shared objects. For this reason it isn't  done with a simply conflicts= rule

Offline

#9 2007-06-01 11:29:56

STiAT
Member
From: Vienna, Austria
Registered: 2004-12-23
Posts: 606

Re: different packages but binaries with the same name

First of all - don't use such things in your install routine.
What does it lead to?
You uninstall lcms and the binary of your package is deleted.

The conflicts=() is defined by you, to tell pacman it conflicts some package. Why not using it this way? Is there any reason to run lcms and argyllcms the same time?

Also, replaces=() can be used (if it's like this). So argyllcms will replace lcms if it's installed (lcms uninstalled, argyllcms installed).


Ability is nothing without opportunity.

Offline

#10 2007-06-01 12:16:57

frigg
Member
From: Germany, Europe
Registered: 2006-10-30
Posts: 46

Re: different packages but binaries with the same name

Hi,

STiAT wrote:

The conflicts=() is defined by you, to tell pacman it conflicts some package. Why not using it this way? Is there any reason to run lcms and argyllcms the same time?

Yes, because the libs of the lcms package are needed by krita, scribus, gphoto, cinepaint,gimp (developer version)....
And Argyllcms doesn't provide these libs.

What I will do is now rename ArgyllCMS icclink binary to argyll_icclink and change all the names in the ArgyllCMS Dokumentation in this way:

cd ${startdir}/src/doc
_FILELIST=`grep icclink * | awk -F : '{print $1}' | sort -u`
for _i in ${_FILELIST} ; do
   sed -i '/icclink/s#icclink#argyll_icclink#' ${_i}
done
mv icclink.html argyll_icclink.html
mv ${startdir}/src/bin/icclink ${startdir}/src/bin/argyll_icclink


STiAT wrote:

Also, replaces=() can be used (if it's like this). So argyllcms will replace lcms if it's installed (lcms uninstalled, argyllcms installed).

Until there is no liblcms package which includes just the header files and the *.a and *.so files I guess there is no other way to get out of this problem.

Offline

#11 2007-06-06 05:59:49

frigg
Member
From: Germany, Europe
Registered: 2006-10-30
Posts: 46

Re: different packages but binaries with the same name

Hi there,

argyllcms was uploaded to AUR:
http://aur.archlinux.org/packages.php?d … 1&ID=11453

In the current issue of the german publication Linuxmagazin 07/2007 is an article about Argyllcms and a translated version will be in the next issue of the linux pro magazine.

regards,

Frank

Offline

Board footer

Powered by FluxBB