[Printing-architecture] [lsb-discuss] Agreement on directory
structure for printing
Till Kamppeter
till.kamppeter at gmail.com
Thu Aug 17 08:56:45 PDT 2006
Anything still to change? Or, Ira, when will you write doen the spec for
this that we can finally submit the directory structure?
Till
Till Kamppeter wrote:
> I think we should agree on the version described below (including
> lib64). The version with lib64 allows to provide both 32-bit and 64-bit
> dynamic libraries for the case that the driver is interfaced by dynamic
> library linking (as OpenPrinting vector without IPC). In a version
> without lib64 every program dynamicxally linking drivers would need to
> be of either 32-bit or 64-bit, not one of 32-bit and another of 64-bit,
> as we can provide only one bit-width of the library. For executables
> like IJS drivers or CUPS drivers it is enough to put them always in
> ../lib/.., as they do not need to be the same bit-width as the caller,
> therefore only 64-bit libraries go into ../lib64/..
>
> Till
>
> -----------------------------------------------------------------------
>
> 0. If we have ../lib/.. paths and as 64-bit system (with backward
> compatibility to a 32-bit system), 64-bit-only libraries go into the
> appropriate ../lib64/.. path and 32-bit libraries and all (32-bit and
> 64-bit) executables into the ../lib/.. path.
>
> 1. Distro supplied files
>
> The filesystem layout as utilized by the distibutions when the
> ppd files and print drivers are initially installed on the
> system. It is presumed that this will also be used for patches
> and updates created and delivered by the distro.
>
> a. Installation path for ppd files
> /usr/share/ppd/<supplier>/<manufacturer>/
>
> b. Installation path for print drivers
> /usr/lib/printdriver/<supplier>
> (/usr/lib64/printdriver/<supplier>)
>
> 2. Third Party Vendor supplied files
>
> The filesystem layout to be utilized by third party vendors
> for delivery of ppd files, print drivers and other vendor
> supplied files.
>
> a. Installation path for PPD files
> /opt/<supplier>/<internal structure non specified>
> with symlink(s) to let the PPD files appear in
> /opt/share/ppd/<supplier>/<manufacturer>
>
> b. Installation path for print drivers
> /opt/<supplier>/<internal structure non specified>
> with symlink(s) to let the driver files appear in
> /opt/lib/printdriver/<supplier>/
> (/opt/lib64/printdriver/<supplier>/)
>
> As the symlink paths are not (yet) registered with LANANA it
> should be taken care of not overwriting anything existing with
> them. Post-install script should not simply overwrite
> files/directories. In reality a permission of the sys admin
> would be needed, but in practice this is not always possible as
> post-install scripts called from a package installation need to
> be non-interactive.
>
> 3. Files created, downloaded, or modified by a system administrator.
>
> a. Installation path for PPD files
> /usr/local/share/ppd/<supplier>/<manufacturer>
>
> b. Installation path for print drivers
> /usr/local/lib/printdriver/<supplier>
> (/usr/local/lib64/printdriver/<supplier>)
>
> 4. Common features
> These features apply to each of the three supplier categories,
> distro, third party vendor, and administrator.
>
> a. PPD file naming convention
> <MFGString>-<MDLString>-<driver>-<language>.ppd
>
> b. The contents of the driver directories are entirely
> determined by the supplier. The path to a driver is found
> by using an absolute path in the ppd file.
>
> c. Install scripts must be written in Bourne Shell without
> any extensions.
>
> 5. Precedence Rules
> Highest precedence is given to the system administrator which
> allows for system by system modfications as determined by
> support personel.
>
> PPD files
> Admin : /usr/local/share/ppd Highest
> Third Party Vendor : /opt/<supplier>
> Distro : /usr/share/ppd Lowest
>
> Drivers
> Admin : /usr/local/lib(64)/printdriver Highest
> Third Party Vendor : /opt/<supplier>
> Distro : /usr/lib(64)/printdriver Lowest
>
>
> -----------------------------------------------------------------------
>
>
> Michael Sweet wrote:
>
>>Christopher Yeoh wrote:
>>
>>
>>>At 2006/8/10 18:43+0200 Andreas Jaeger writes:
>>>
>>>
>>>>On x86-64, ppc64 and s390x I suggest:
>>>>{/usr,/usr/local,/opt}/lib/printdriver for 32-bit x86, ppc, s390
>>>>libraries
>>>>{/usr,/usr/local,/opt}/lib64/printdriver for 64-bit x86-64, ppc64,s390x
>>>>libraries
>>>>
>>>>Just don't hardcode lib but add a footnote that on lib64 systems,
>>>>lib64 is used,
>>>
>>>
>>>Yes, that would keep it consistent with the rest of the FHS.
>>
>>
>>Actually, I'd expect both 32-bit and 64-bit drivers to be supported
>>on a 64-bit system, and the default path we use in CUPS will include
>>both the 32-bit and 64-bit paths when CUPS is configured for multiple
>>architectures...
>>
>
>
>
More information about the Printing-architecture
mailing list