[Foo2zjs-maintainer] Architecture-independent files: CRDs and PPDs

Luca Capello luca at pca.it
Mon Apr 6 23:20:18 UTC 2009


Hi there!

Lintian v2.2.9 shows the following information tag for the latest
foo2zjs version, i.e. 20090301dfsg-3:
=====
I: foo2zjs: arch-dep-package-has-big-usr-share 2700kB 62%

    The package has a significant amount of architecture-independent
    data in /usr/share, while it is an architecture-dependent
    package. This is wasteful of mirror space and bandwidth, as we then
    end up with multiple copies of this data, one for each architecture.

    If the data in /usr/share is not architecture-independent, it is a
    policy violation, and in this case, you should move that data
    elsewhere.

    Refer to Debian Developer's Reference section 6.7.5
    (Architecture-independent data) for details.

    Severity: wishlist, Certainty: certain
=====

The content of /usr/share is:
=====
4.0K    usr/share/foo2slx/icm
8.0K    usr/share/foo2slx
240K    usr/share/doc/foo2zjs
244K    usr/share/doc
4.0K    usr/share/foo2hp/icm
8.0K    usr/share/foo2hp
4.0K    usr/share/foo2zjs/firmware
4.0K    usr/share/foo2zjs/tmp
4.0K    usr/share/foo2zjs/icm
1.8M    usr/share/foo2zjs/crd
1.8M    usr/share/foo2zjs
132K    usr/share/man/man1
136K    usr/share/man
8.0K    usr/share/pixmaps
4.0K    usr/share/foo2xqx/firmware
8.0K    usr/share/foo2xqx
4.0K    usr/share/foo2oak/icm
8.0K    usr/share/foo2oak
4.0K    usr/share/foo2qpdl/icm
12K     usr/share/foo2qpdl/crd
20K     usr/share/foo2qpdl
4.0K    usr/share/foo2hiperc/icm
8.0K    usr/share/foo2hiperc
396K    usr/share/ppd/foo2zjs
400K    usr/share/ppd
4.0K    usr/share/foo2lava/icm
8.0K    usr/share/foo2lava
8.0K    usr/share/applications
2.7M    usr/share/
=====

Thus, the two most problematic type of files are CRDs and PPDs.

I think it is clear that the latter should get their own binary package,
similar to how other PPDs are shipped, e.g. hpijs-ppds or
openprinting-ppds.  Note that the PPDs included in the foo2zjs driver
are not distributed by OpenPrinting:

  http://openprinting.org/show_driver.cgi?driver=foo2zjs

Now let me go back to the former, thus CRDs files.  First of all, I
needed to understand what they are: according to Wikipedia, they are
Color Rendering Dictionaries, target (device) color profiles in
PostScript documents.  If I have understood correctly, this means that
each printer should have its own CRD, in a way similar to ICC profiles.
Thus CRDs as well should get their own binary package.

Creating the two new binary packages described above strips down the
size of the foo2zjs binary package to 1MB vs. 1.5MB.  OTOH, the
installed size is now half of the previous one, 2.1MB vs. 4.3MB.  This
has two major advantages:

1) as lintian suggested, it reduces the disk space and bandwidth
   required by mirrors (I know disk space is nowadays cheap, but I am of
   the idea that we should always aim at optimize as best as possible).

2) sysadmins can tune their systems in a more finer way (I am one of
   those people who try to avoid installing stuff that I do not need).

   NB, the (obvious) fact that the foo2zjs binary package Recommend:
   foo2zjs-crds and foo2zjs-ppds means that installing foo2zjs will pull
   in the two other packages, thanks to the APT::Install-Recommends
   option on by default :-)

I will commit the changes above this week-end, if no one will complain
before...

Thx, bye,
Gismo / Luca
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 314 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/foo2zjs-maintainer/attachments/20090407/17acb312/attachment.pgp>


More information about the Foo2zjs-maintainer mailing list