2 This file is in Outline mode. It is best viewed under XEmacs.
4 Press C-c C-o (Ctrl+c Ctrl+o) now to see a list of headings.
5 To expand a heading: Put the cursor on the heading and press C-c C-s
6 To collapse a heading: Press C-c C-d
8 For general XEmacs navigation tips: Press C-h t
10 The XEmacs Packages Quick Start Guide
11 -------------------------------------
13 This text is intended to help you get started installing a new XEmacs
14 and its packages from start. For details see the 'Startup Paths' and
15 'Packages' sections of the XEmacs info manual.
17 * Real Real Quickstart FAQ
18 --------------------------
20 Q. Do I need to have the packages to compile XEmacs?
21 A. No, XEmacs will build and install just fine without any packages
22 installed. However, only the most basic editing functions will be
23 available with no packages installed, so installing packages is an
24 essential part of making your installed XEmacs _useful_.
26 Q. I really liked the old way that packages were bundled and do not
27 want to mess with packages at all.
28 A. You can grab all the packages at once like you used to with old
29 XEmacs versions, skip to the 'Sumo Tarball' section below.
31 Q. After installing, I want XEmacs to do `foo', but when I invoke it
32 (or click the toolbar button or select the menu item), nothing (or
33 an error) happens, and it used to work.
34 A. See the first FAQ; you may be missing a package that is essential to
35 you. You can either track it down and install it, or install the
36 `Sumo Tarball' (see the second FAQ).
41 The XEmacs package system is still in its infancy. Please expect a few
42 minor hurdles on the way. Also neither the interface nor the structure is
43 set in stone. The XEmacs maintainers reserve the right to sacrifice
44 backwards compatibility as quirks are worked out over the coming
50 In order to reduce the size and increase the maintainability of XEmacs,
51 the majority of the Elisp packages that came with previous releases
52 have been unbundled. They have been replaced by the package system.
53 Each elisp add-on (or groups of them when they are small) now comes
54 in its own tarball that contains a small search hierarchy.
56 You select just the ones you need. Install them by untarring them into
57 the right place. On startup XEmacs will find them, set up the load
58 path correctly, install autoloads, etc, etc.
63 On Startup XEmacs looks for packages in so called package hierarchies.
64 These can be specified by the 'package-path' parameter to the
65 'configure' script. However by default there are three system wide
66 hierarchies. ("$prefix" defaults to "/usr/local")
68 $prefix/lib/xemacs/xemacs-packages
69 Normal packages go here.
71 $prefix/lib/xemacs/mule-packages
72 Mule packages go here and are only searched by MULE-enabled XEmacsen.
74 $prefix/lib/xemacs/site-packages/
75 Local and 3rd party packages go here.
78 * Where to get the packages
79 ---------------------------
81 Packages are available from ftp://ftp.xemacs.org/pub/xemacs/packages
84 * How to install the packages
85 -----------------------------
86 There are a few different ways to install packages:
88 1. Manually, all at once, using the 'Sumo Tarball'.
89 2. Manually, using individual package tarballs.
90 3. Automatically, using the package tools from XEmacs.
92 ** Manually, all at once, using the 'Sumo Tarball'
93 --------------------------------------------------
95 Those with little time, cheap connections and plenty of disk space can
96 install all the packages at once using the sumo tarballs.
101 For an XEmacs compiled with Mule you also need:
103 xemacs-mule-sumo.tar.gz
105 N.B. They are called 'Sumo Tarballs' for good reason. They are
106 currently about 19MB and 4.5MB (gzipped) respectively.
110 cd $prefix/lib/xemacs ; gunzip -c <tarballname> | tar xvf - RET
112 Or, if you have GNU tar:
114 cd $prefix/lib/xemacs ; tar zxvf /path/to/<tarballname> RET
116 As the Sumo tarballs are not regenerated as often as the individual
117 packages, it is recommended that you use the automatic package tools
118 afterwards to pick up any recent updates.
120 ** Manually, using individual package tarballs
121 ----------------------------------------------
123 Fetch the packages from the FTP site, CD-ROM whatever. The filenames
124 have the form name-<version>-pkg.tar.gz and are gzipped tar files. For
125 a fresh install it is sufficient to untar the file at the top of the
128 Note: If you are upgrading packages already installed, it's best to
129 remove the old package first (see 'Upgrading/Removing Packages' below).
131 For example if we are installing the 'xemacs-base'
132 package (version 1.48):
134 mkdir $prefix/lib/xemacs/xemacs-packages RET # if it does not exist yet
135 cd $prefix/lib/xemacs/xemacs-packages RET
136 gunzip -c /path/to/xemacs-base-1.48-pkg.tar.gz | tar xvf - RET
138 Or if you have GNU tar, the last step can be:
140 tar zxvf /path/to/xemacs-base-1.48-pkg.tar.gz RET
142 For MULE related packages, it is best to untar into the mule-packages
143 hierarchy, i.e. for the mule-base package, version 1.37:
145 mkdir $prefix/lib/xemacs/mule-packages RET # if it does not exist yet
146 cd $prefix/lib/xemacs/mule-packages RET
147 gunzip -c /path/to/mule-base-1.37-pkg.tar.gz | tar xvf - RET
149 Or if you have GNU tar, the last step can be:
151 tar zxvf /path/to/mule-base-1.37-pkg.tar.gz RET
154 ** Automatically, using the package tools from XEmacs
155 -----------------------------------------------------
157 XEmacs comes with some tools to make the periodic updating and
158 installing easier. It will notice if new packages or versions are
159 available and will fetch them from the FTP site.
161 Unfortunately this requires that a few packages are already in place.
162 You will have to install them by hand as above or use a SUMO tarball.
163 This requirement will hopefully go away in the future. The packages
166 efs - To fetch the files from the FTP site or mirrors.
167 xemacs-base - Needed by efs.
171 mule-base - Needed if you want to use XEmacs with MULE.
173 After installing these by hand, fire up XEmacs and follow these
176 Note: The menus in XEmacs 21.2.x and up have changed slightly, so
177 where I mention "Options -> Manage Packages", substitute "Tools ->
180 (1) Choose a download site.
181 - via menu: Options -> Manages Packages -> Add Download Site
182 - via keyb: M-x customize-variable RET package-get-remote RET
183 (put in the details of remote host and directory)
185 If the package tarballs _AND_ the package-index file are in a
186 local directory, you can: M-x pui-add-install-directory RET
188 (2) Obtain a list of packages and display the list in a buffer named
190 - menu: Options -> Manage Packages -> List & Install
191 - keyb: M-x pui-list-packages RET
193 XEmacs will now connect to the remote site and download the
194 latest package-index file. If you see an error about the
195 package-index entries not being PGP signed, you can safely
196 ignore this because PGP has not been integrated into the XEmacs
199 The resulting buffer, "*Packages*" has brief instructions at the
202 (3) Choose the packages you wish to install.
203 - mouse: Click button 2 on the package name.
204 - keyb: RET on the package name
206 (4) Make sure you have everything you need.
207 - menu: Packages -> Add Required
210 XEmacs will now search for packages that are required by the
211 ones that you have chosen to install and offer to select
214 For novices and gurus alike, this step can save your bacon.
215 It's easy to forget to install a critical package.
217 (5) Download and install the packages.
218 - menu: Packages -> Install/Remove Selected
224 New packages can only be used by XEmacs after a restart.
226 * Which Packages to install?
227 ----------------------------
229 This is difficult to say. When in doubt install a package. If you
230 administrate a big site it might be a good idea to just install
231 everything. A good minimal set of packages for XEmacs-latin1 would be
233 xemacs-base, xemacs-devel, c-support, cc-mode, debug, dired, efs,
234 edit-utils, fsf-compat, mail-lib, net-utils, os-utils, prog-modes,
237 If you are using the XEmacs package tools, don't forget to do:
239 Packages -> Add Required
241 To make sure you have everything that the packages you have chosen to
244 See also '.../etc/PACKAGES' for further descriptions of the individual
247 * Upgrading/Removing Packages
248 -----------------------------
250 As the exact files and their locations contained in a package may
251 change it is recommended to remove a package first before installing a
252 new version. In order to facilitate removal each package contains an
253 pgkinfo/MANIFEST.pkgname file which list all the files belong to the
254 package. M-x package-admin-delete-binary-package RET can be used to
255 remove a package using this file.
257 Note that the interactive package tools included with XEmacs already do
260 * User Package directories
261 --------------------------
263 In addition to the system wide packages, each user can have his own
264 packages installed in "~/.xemacs/xemacs-packages". If you want to
265 install packages there using the interactive tools, you need to set
266 'pui-package-install-dest-dir' to "~/.xemacs/xemacs-packages"
268 * Site lisp/Site start
269 ----------------------
271 The site-packages hierarchy replaces the old 'site-lisp' directory.
272 XEmacs no longer looks into a 'site-lisp' directly by default.
273 A good place to put 'site-start.el' would be in
274 $prefix/lib/xemacs/site-packages/lisp/
276 * Finding the right packages
277 ----------------------------
279 If you want to find out which package contains the functionality you
280 are looking for, use M-x package-get-package-provider, and give it a
281 symbol that is likely to be in that package.
283 For example, if some code you want to use has a (require 'thingatpt)
286 M-x package-get-package-provider RET thingatpt RET
288 which will return something like: (fsf-compat "1.08").