discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Placement of resources


From: Jonathan Gapen
Subject: Re: Placement of resources
Date: Wed, 07 Feb 2001 10:56:51 -0600

Dennis Leeuw wrote:
> Question 1:
> 
> I have choosen for the DGS init files (like gs_btokn.ps) to be placed in
> $GNUSTEP_SYSTEM_ROOT/Library/DGS
> Is this the correct place for them or should those go into Libraries/DGS
> or is Library/PostScript the place....

    It depends, really.  GNUstep uses libraries instead of frameworks,
because proper framework support on most platforms may be impossible, so
all of the libraries and their resources get put in the Libraries/
directory.  Libraries/ has a bundle structure, and library code can use
the NSBundle methods to find resources.  Therefore, like in frameworks,
resources that the library code expects to find should go in there.
    The Library/ directory, as best I can put it, is for resources the
library/program code *doesn't* expect to find.  That is, optional
resources that users and/or admins can extend in
$GNUSTEP_NETWORK_ROOT/Library, $GNUSTEP_LOCAL_ROOT/Library and
$GNUSTEP_USER_ROOT/Library.  Resources the code will use if found, but
run fine without.
    However, DGS doesn't use Libraries/ as a bundle, and its init files
aren't option, so no spot is completely appropriate.

> Question 2:
> 
> While looking for the correct place I saw that within Libraries there is
> a directory called Resources containing:
> 
> DTDs/
> DocTemplates/
> Images/
> Languages/
> NSCharacterSets/
> NSTimeZones/
> PrinterTypes/
> 
> Shouldn't those be placed in $GNUSTEP_SYSTEM_ROOT/Library ?

    As per the description above, Images/, NSCharacterSets/, and
NSTimeZones/ should stay put.  Images contains widget images needed by
gnustep-gui, NSCharacterSets/ contains files for the standard character
sets available through the NSCharacterSet API, and since it doesn't make
sense for users to add timezone files, the NSTimeZone class can keep
those resources to itself.  PrinterTypes/ needs to move, as NSPrinter
does not rely on them, and admins/users certainly need to add PPDs.
    The others are more problematic.  There's special handling for
"GNUstep DTDs" in the GSXML code, so maybe those should stay is
Libraries/, and another DTDs/ directory created in Library/?  With
DocTemplates/, I'm really not sure what's going on.  And for Languages/,
those files contain a property list of language defaults that
NSUserDefaults relies upon, but it would also be nice to allow
additional languages installed later. 

-- 
All persons, living or dead, are purely coincedental.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]