subdirectory @file{packages}. Package file names follow
the naming convention @file{<package-name>-<version>-pkg.tar.gz}.
-If you have EFS @ref{(EFS)}, packages can be installed over the network.
+If you have @ref{(EFS)}, packages can be installed over the network.
Alternatively, if you have copies of the packages locally, you can
install packages from a local disk or CDROM.
The file @file{etc/PACKAGES} in the core distribution contains a list of
-the @ref{Available Packages} at the time of the XEmacs release. Packages are
-also listed on the @code{Options} menu under:
-
-@example
- Options->Customize->Emacs->Packages
-@end example
-
-However, don't select any of these menu picks unless you actually want
-to install the given package (and have properly configured your system
-to do so).
+the @ref{Available Packages} at the time of the XEmacs release.
You can also get a list of available packages, and whether or not they
are installed, using the visual package browser and installer. You can
access it via the menus:
@example
- Options->Manage Packages->List & Install
+ Tools -> Packages -> List and Install
@end example
Or, you can get to it via the keyboard:
After installing these by hand, fire up XEmacs and follow these
steps.
-Note: The menus in XEmacs 21.2.x and up have changed slightly, so
-where I mention "Options -> Manage Packages", substitute "Tools ->
-Packages".
-
@enumerate 1
@item
Choose a download site.
-via menu: Options -> Manages Packages -> Add Download Site
+via menu: Tools -> Packages -> Add Download Site
via keyb: @code{M-x customize-variable RET package-get-remote RET}
(put in the details of remote host and directory)
@item
Obtain a list of packages and display the list in a buffer named
@file{*Packages*}.
-menu: Options -> Manage Packages -> List & Install
+menu: Tools -> Packages -> List & Install
keyb: @code{M-x pui-list-packages RET}
XEmacs will now connect to the remote site and download the
@end table
If there is no character in the first column, the package has been
-installed and is up-to-date.
+installed and is up to date.
From here, you can select or unselect packages for installation using
the @key{RET} key, the @kbd{Mouse-2} button or selecting "Select" from
@cindex local.rules
@heading The Local.rules File:
This file is used when building and installing packages from source. In
-the top level of the CVS module, @file{xemacs-packages}, contains the
+the top level of the CVS module, @file{packages}, contains the
file, @file{Local.rules.template}. Simply copy that to
@file{Local.rules} and edit it to suit your needs.
These are the variables in 'Local.rules' that you will need to
-address.
+address. Items that have default settings have those defaults shown.
@table @var
+@item XEMACS = xemacs
+If your XEmacs isn't in your path, change this. Native MS Windows users
+should double quote this if the path has embedded spaces.
+
+@item BUILD_WITHOUT_MULE =
+Building from CVS defaults to building the Mule
+packages. Set this to 't' if you don't want/have Mule
+
+@item XEMACS_NATIVE_NT =
+Set this to 't' if you are building on WinNT. NT users should note that
+you still need the Cygwin environment to build the packages.
+
+@item XEMACS_INSTALLED_PACKAGES_ROOT = /usr/local/lib/xemacs
+This is the directory tree under which the installed packages go. Under
+this directory there would normally be @file{xemacs-packages/} for
+standard (non-Mule) packages, @file{mule-packages/} for Mule packages
+(if you built XEmacs with Mule), and possibly @file{site-packages/} for
+3rd party packages that aren't distributed by XEmacs.org.
+
@item symlink =
Set this to 't' if you want to do a "run in place".
Setting this doesn't work well with 'make bindist'
-@item XEMACS_PACKAGES =
-This is where you set the normal packages that you
-want to install. eg:
+@item NONMULE_INSTALLED_PACKAGES_ROOT = $@{XEMACS_INSTALLED_PACKAGES_ROOT@}/xemacs-packages
+This is where the non-Mule packages are installed to. You probably
+don't want to change this.
+
+@item MULE_INSTALLED_PACKAGES_ROOT = $@{XEMACS_INSTALLED_PACKAGES_ROOT@}/mule-packages
+This is where the Mule packages are installed to. You probably don't
+want to change this. Please note that @code{make bindist} does
+@emph{not} use this variable. When doing a @code{make bindist}
+@emph{everything} goes into @var{NONMULE_INSTALLED_PACKAGES_ROOT}.
+
+@item NONMULE_PACKAGES = xemacs-packages
+This is where you set the non-Mule packages that you want to install. eg:
@example
XEMACS_PACKAGES = xemacs-packages/xemacs-base xemacs-packages/bbdb
@end example
-@item XEMACS_STAGING = $@{XEMACS_PACKAGES_BASE@}/../Packages
-Set this to where you want normal packages to be
-installed to.
-
-@item PACKAGE_INDEX = package-index
-If you want the package-index file to have a different
-name, change this.
-
-@item BUILD_WITHOUT_MULE =
-Building from CVS defaults to building the Mule
-packages. Set this to 't' if you don't want/have Mule
-
-@item MULE_PACKAGES =
+@item MULE_PACKAGES = mule-packages
Same as for 'XEMACS_PACKAGES' except you list the Mule
packages you want to install here. eg:
@example
MULE_PACKAGES = mule-packages/mule-base mule-packages/skk
@end example
-@item MULE_STAGING = $@{XEMACS_PACKAGES_BASE@}/../Mule-Packages
-Set this to where you want Mule packages installed
-to. Note: 'make bindist' does not use this variable.
-
-@item XEMACS = xemacs
-If your XEmacs isn't in your path, change this.
-
-@item XEMACS_NATIVE_NT =
-Set this to 't' if you are building on WinNT.
+@item PACKAGE_INDEX = package-index
+If you want the package-index file to have a different
+name, change this.
@item INSTALL = install -c
The path to your BSD compatible install program.
looking for isn't here, please send a message to the
@email{xemacs-beta@@xemacs.org, XEmacs Beta list}.
-This data is up-to-date as of May 15, 2001.
+This data is up to date as of September 22, 2002.
@subsection Normal Packages
A very broad selection of elisp packages.
Basic TeX/LaTeX support.
@item bbdb
-The Big Brother Data Base
+The Big Brother Data Base: a rolodex-like database program.
@item build
Build XEmacs using custom widgets.
@item cc-mode
C, C++ and Java language support.
+@item clearcase
+Support for the Clearcase version control system.
+
@item cookie
-Spook and Yow (Zippy quotes).
+"Fortune cookie"-style messages. Includes Spook (suspicious phrases)
+and Yow (Zippy quotes).
@item crisp
Crisp/Brief emulation.
@item debug
GUD, gdb, dbx debugging support.
+@item dictionary
+Interface to RFC2229 dictionary servers.
+
@item dired
The DIRectory EDitor is for manipulating, and running commands on
files in a directory.
+@item docbookide
+DocBook editing support.
+
+@item ecrypto
+Crypto functionality in Emacs Lisp.
+
@item edebug
A Lisp debugger.
@item efs
Treat files on remote systems the same as local files.
-@item eicq
-ICQ Client developed and tested on Linux x86;
-only supported on that platform
-
@item eieio
Enhanced Implementation of Emacs Interpreted Objects.
@item eshell
Command shell implemented entirely in Emacs Lisp.
+@item ess
+ESS: Emacs Speaks Statistics.
+
@item eterm
Terminal emulator.
@item forms
Forms editing support (obsolete, use the built-in Widget instead).
+@item fortran-modes
+Fortran language support.
+
@item frame-icon
Provide a WM icon based on major mode.
@item fsf-compat
-FSF Emacs compatibility files.
+GNU Emacs compatibility files.
@item games
Tetris, Sokoban, and Snake.
@item gnus
The Gnus Newsreader and Mailreader.
+@item haskell-mode
+Haskell language support.
+
@item hm--html-menus
HTML editing.
+@item ibuffer
+Advanced replacement for buffer-menu.
+
@item idlwave
Editing and Shell mode for the Interactive Data Language.
Enhanced front-end for Grep.
@item ilisp
-Front-end for Inferior Lisp.
+Front-end for interacting with Inferior Lisp (external lisps).
@item ispell
Spell-checking with ispell.
@item jde
Java language and development support.
+@item liece
+IRC (Internet Relay Chat) client for Emacs.
+
@item mail-lib
Fundamental lisp files for providing email support.
Support for messaging encryption with PGP.
@item mew
-Messaging in an Emacs World.
+Messaging in an Emacs World; a MIME-based email program.
@item mh-e
Front end support for MH.
@item mine
-Minehunt.
+Elisp implementation of the game 'Minehunt'.
@item misc-games
Other amusements and diversions.
+@item mmm-mode
+Support for Multiple Major Modes within a single buffer.
+
@item net-utils
Miscellaneous Networking Utilities. This is a single-file package and
files may be deleted at will.
Miscellaneous single-file O/S utilities, for printing, archiving,
compression, remote shells, etc.
+@item ocaml
+Objective Caml language support.
+
@item pc
PC style interface emulation.
@item pcomplete
Provides programmatic completion.
+@item perl-modes
+Perl language support.
+
@item prog-modes
Miscellaneous single-file lisp files for various programming languages.
-@item ps-print-nomule
-Old, but no-Mule safe ps-print.
+@item ps-print
+Print buffers to PostScript printers.
@item psgml
Validated HTML/SGML editing.
+@item psgml-dtds
+A collection of DTDs for psgml. Note that this package is deprecated
+and will be removed in the future, most likely Q2/2003. Instead of using
+this, you should install needed DTDs yourself.
+
+@item python-modes
+Python language support.
+
@item reftex
Emacs support for LaTeX cross-references, citations.
@item rmail
An obsolete Emacs mailer. If you do not already use it don't start.
+@item ruby-modes
+Ruby language support.
+
+@item sasl
+Simple Authentication and Security Layer (SASL) library.
+
@item scheme
Front-end support for Inferior Scheme.
@item sh-script
Support for editing shell scripts.
+@item sieve
+Manage Sieve email filtering scripts.
+
@item slider
User interface tool.
+@item sml-mode
+Standard ML editing support.
+
@item sounds-au
XEmacs Sun sound files.
@item tpu
DEC EDIT/TPU support.
+@item tramp
+Remote shell-based file editing. This is similar to EFS or Ange-FTP,
+but works with rsh/ssh and rcp/scp.
+
@item vc
Version Control for Free systems.
supporting Lisp development. It is a single-file package so it may be
tailored.
+@item xslide
+XSL editing support.
+
@item xslt-process
A minor mode for (X)Emacs which allows running an XSLT processor on a
buffer.
Wnn (4.2 and 6) support. SJ3 support. Must be installed prior to
XEmacs build.
+@item latin-unity
+Unify character sets in a buffer. When characters belong to disjoint
+character sets, this attempts to translate the characters so
+that they belong to one character set. If the buffer coding system is
+not sufficient, this suggests different coding systems.
+
@item leim
Quail. Used for everything other than English and Japanese.
@item mule-base
Basic Mule support. Must be installed prior to building with Mule.
+@item mule-ucs
+Extended coding systems (including Unicode) for XEmacs.
+
@item skk
Another Japanese Language Input Method. Can be used without a
separate process running as a dictionary server.