XDG Compliant user package tree -- doc updates.
[sxemacs] / info / sxemacs / startup.texi
index 6a1fc59..6c5a184 100644 (file)
@@ -64,35 +64,38 @@ up in the various SXEmacs paths.  Early package hierarchies are at the
 very front, late ones somewhere in the middle, and last hierarchies are
 (you guessed it) last.
 
-By default, SXEmacs expects an early package hierarchy in the
-subdirectory @file{.sxemacs/xemacs-packages} of the user's home
-directory.
-
-Moreover, SXEmacs expects late hierarchies in the subdirectories
-@file{site-packages}, @file{mule-packages}, @file{xemacs-packages}, and
-@file{sxemacs-packages} (in that order) of the @file{<root>/lib/sxemacs}
-subdirectory of one of the installation hierarchies.  (If you run
-in-place, these are direct subdirectories of the build directory.)
-Furthermore, SXEmacs will also search these subdirectories in the
-@file{<root>/lib/sxemacs-<VERSION>} subdirectory and prefer directories
-found there.
-
-By default, SXEmacs does not have a pre-configured last package
+By default, SXEmacs looks for @dfn{early} package hierarchies in
+@file{@var{$XDG_DATA_HOME}/sxemacs}, and @dfn{late} package hierarchies in
+@file{@var{$PREFIX}/share/sxemacs}.
+
+Under the @dfn{early} and @dfn{late} hierarchies are the
+subdirectories: @file{site-packages}, @file{sxemacs-packages},
+@file{mule-packages}, and @file{xemacs-packages}, which are searched
+in that order.  (If you run in-place, these are direct subdirectories
+of the build directory.) @c really?
+@c ### I don't think this is right, is it? --SY
+@c   Furthermore, SXEmacs will also search these
+@c subdirectories in the @file{<root>/lib/sxemacs-<VERSION>} subdirectory
+@c and prefer directories found there.
+
+By default, SXEmacs does not have a pre-configured @dfn{last} package
 hierarchy.  Last hierarchies are primarily for using package hierarchies
 of outdated versions of XEmacs as a fallback option.  For example, it is
-possible to run SXEmacs with the 20.4 package hierarchy as a last
+possible to run SXEmacs with the XEmacs 20.4 package hierarchy as a last
 hierarchy.
 
 It is possible to specify at configure-time the location of the various
-package hierarchies with the @code{--package-path} option to configure.
+package hierarchies with the @code{--with-package-path} option to configure.
 @cindex package path
-The early, late, and last components of the package path are separated
-by double instead of single colons.  If all three components are
-present, they locate the early, late, and last package hierarchies
-respectively.  If two components are present, they locate the early and
-late hierarchies.  If only one component is present, it locates the
-late hierarchy.  At run time, the package path may also be specified via
-the @code{EMACSPACKAGEPATH} environment variable.
+The @dfn{early}, @dfn{late}, and @dfn{last} components of the package path
+are separated by double colons instead of single colons.  If all three
+components are present, they locate the early, late, and last package
+hierarchies respectively.  If two components are present, they locate the
+early and late hierarchies.  If only one component is present, it locates
+the late hierarchy.  At run time, the package path may also be specified
+via the @code{EMACSPACKAGEPATH} environment variable.  Or, alternatively,
+the @dfn{early} hierarchy can be set via the @code{-user-pkgs-directory}
+command line argument (@pxref{Command Switches}).
 
 An SXEmacs package is laid out just like a normal installed SXEmacs lisp
 directory.  It may have @file{lisp}, @file{etc}, @file{info}, and
@@ -113,21 +116,23 @@ when looking for them.
 @item version-specific
 @cindex version-specific directories
 directories are specific to the version of SXEmacs they belong to and
-typically reside under @file{<root>/lib/sxemacs-<VERSION>}.
+typically reside under @file{<root>/share/sxemacs-<VERSION>}.  This is
+where you'll find the lisp that is shipped with SXEmacs, we call it
+the @dfn{core lisp}.
 @item site-specific
 @cindex site-specific directories
 directories are independent of the version of SXEmacs they belong to and
-typically reside under @file{<root>/lib/sxemacs}
+typically reside under @file{<root>/share/sxemacs}.  Where you'll find
+the site's package lisp (@code{late-packages}).
 @item architecture-specific
 @cindex architecture-specific directories
 directories are specific both to the version of SXEmacs and the
 architecture it runs on and typically reside under
-@file{<root>/lib/sxemacs-<VERSION>/<ARCHITECTURE>}.
+@file{<root>/lib/sxemacs-<VERSION>/<ARCHITECTURE>}.  This is where
+you'll find the @dfn{emodules}, and other miscellaneous things such as
+@code{gnuserv}, and @code{yow}.
 @end table
 
-During installation, all of these directories may also reside directly
-under @file{<root>}, because that is where they are in the SXEmacs tarball.
-
 If SXEmacs runs with the @code{-debug-paths} option (@pxref{Command
 Switches}), it will print the values of these variables, hopefully
 aiding in debugging any problems which come up.