456
|
1 -*- Outline -*-
|
|
2 This file is in Outline mode. It is best viewed under XEmacs.
|
|
3
|
|
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
|
|
7
|
|
8 For general XEmacs navigation tips: Press C-h t
|
|
9
|
331
|
10 The XEmacs Packages Quick Start Guide
|
|
11 -------------------------------------
|
|
12
|
|
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.
|
|
16
|
456
|
17 * Real Real Quickstart FAQ
|
|
18 --------------------------
|
331
|
19
|
|
20 Q. Do I need to have the packages to compile XEmacs?
|
438
|
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_.
|
331
|
25
|
|
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.
|
|
30
|
444
|
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).
|
|
37
|
456
|
38 * A note of caution
|
|
39 -------------------
|
331
|
40
|
438
|
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
|
331
|
43 set in stone. The XEmacs maintainers reserve the right to sacrifice
|
|
44 backwards compatibility as quirks are worked out over the coming
|
438
|
45 releases.
|
331
|
46
|
456
|
47 * Some Package Theory
|
|
48 ---------------------
|
331
|
49
|
|
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.
|
|
55
|
438
|
56 You select just the ones you need. Install them by untarring them into
|
331
|
57 the right place. On startup XEmacs will find them, set up the load
|
|
58 path correctly, install autoloads, etc, etc.
|
|
59
|
456
|
60 * Package hierarchies
|
|
61 ---------------------
|
331
|
62
|
|
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
|
456
|
66 hierarchies. ("$prefix" defaults to "/usr/local")
|
331
|
67
|
|
68 $prefix/lib/xemacs/xemacs-packages
|
|
69 Normal packages go here.
|
|
70
|
456
|
71 $prefix/lib/xemacs/mule-packages
|
|
72 Mule packages go here and are only searched by MULE-enabled XEmacsen.
|
|
73
|
|
74 $prefix/lib/xemacs/site-packages/
|
|
75 Local and 3rd party packages go here.
|
|
76
|
|
77
|
|
78 * Where to get the packages
|
|
79 ---------------------------
|
331
|
80
|
|
81 Packages are available from ftp://ftp.xemacs.org/pub/xemacs/packages
|
438
|
82 and its mirrors.
|
331
|
83
|
456
|
84 * How to install the packages
|
|
85 -----------------------------
|
|
86 There are a few different ways to install packages:
|
331
|
87
|
456
|
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.
|
331
|
91
|
456
|
92 ** Manually, all at once, using the 'Sumo Tarball'
|
|
93 --------------------------------------------------
|
331
|
94
|
|
95 Those with little time, cheap connections and plenty of disk space can
|
438
|
96 install all the packages at once using the sumo tarballs.
|
456
|
97 Download the file:
|
331
|
98
|
456
|
99 xemacs-sumo.tar.gz
|
331
|
100
|
456
|
101 For an XEmacs compiled with Mule you also need:
|
331
|
102
|
456
|
103 xemacs-mule-sumo.tar.gz
|
331
|
104
|
333
|
105 N.B. They are called 'Sumo Tarballs' for good reason. They are
|
456
|
106 currently about 19MB and 4.5MB (gzipped) respectively.
|
|
107
|
|
108 Install them by:
|
331
|
109
|
456
|
110 cd $prefix/lib/xemacs ; gunzip -c <tarballname> | tar xvf - RET
|
331
|
111
|
456
|
112 Or, if you have GNU tar:
|
|
113
|
|
114 cd $prefix/lib/xemacs ; tar zxvf /path/to/<tarballname> RET
|
331
|
115
|
|
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.
|
|
119
|
456
|
120 ** Manually, using individual package tarballs
|
|
121 ----------------------------------------------
|
331
|
122
|
456
|
123 Fetch the packages from the FTP site, CD-ROM whatever. The filenames
|
331
|
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
|
456
|
126 package hierarchy.
|
|
127
|
|
128 Note: If you are upgrading packages already installed, it's best to
|
|
129 remove the old package first (see 'Upgrading/Removing Packages' below).
|
331
|
130
|
456
|
131 For example if we are installing the 'xemacs-base'
|
|
132 package (version 1.48):
|
|
133
|
|
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
|
|
137
|
|
138 Or if you have GNU tar, the last step can be:
|
331
|
139
|
456
|
140 tar zxvf /path/to/xemacs-base-1.48-pkg.tar.gz RET
|
|
141
|
|
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:
|
331
|
144
|
456
|
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
|
|
148
|
|
149 Or if you have GNU tar, the last step can be:
|
331
|
150
|
456
|
151 tar zxvf /path/to/mule-base-1.37-pkg.tar.gz RET
|
|
152
|
|
153
|
|
154 ** Automatically, using the package tools from XEmacs
|
|
155 -----------------------------------------------------
|
331
|
156
|
|
157 XEmacs comes with some tools to make the periodic updating and
|
|
158 installing easier. It will notice if new packages or versions are
|
456
|
159 available and will fetch them from the FTP site.
|
331
|
160
|
438
|
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.
|
331
|
163 This requirement will hopefully go away in the future. The packages
|
|
164 you need are:
|
|
165
|
456
|
166 efs - To fetch the files from the FTP site or mirrors.
|
331
|
167 xemacs-base - Needed by efs.
|
|
168
|
|
169 and optionally:
|
|
170
|
438
|
171 mule-base - Needed if you want to use XEmacs with MULE.
|
331
|
172
|
456
|
173 After installing these by hand, fire up XEmacs and follow these
|
|
174 steps.
|
|
175
|
|
176 Note: The menus in XEmacs 21.2.x and up have changed slightly, so
|
|
177 where I mention "Options -> Manage Packages", substitute "Tools ->
|
|
178 Packages".
|
331
|
179
|
456
|
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)
|
331
|
184
|
456
|
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
|
|
187
|
|
188 (2) Obtain a list of packages and display the list in a buffer named
|
|
189 "*Packages*".
|
|
190 - menu: Options -> Manage Packages -> List & Install
|
|
191 - keyb: M-x pui-list-packages RET
|
331
|
192
|
456
|
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
|
|
197 package tools yet.
|
|
198
|
|
199 The resulting buffer, "*Packages*" has brief instructions at the
|
|
200 end of the buffer.
|
|
201
|
|
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
|
331
|
205
|
456
|
206 (4) Make sure you have everything you need.
|
|
207 - menu: Packages -> Add Required
|
|
208 - keyb: r
|
|
209
|
|
210 XEmacs will now search for packages that are required by the
|
|
211 ones that you have chosen to install and offer to select
|
|
212 those packages also.
|
331
|
213
|
456
|
214 For novices and gurus alike, this step can save your bacon.
|
|
215 It's easy to forget to install a critical package.
|
438
|
216
|
456
|
217 (5) Download and install the packages.
|
|
218 - menu: Packages -> Install/Remove Selected
|
|
219 - keyb: x
|
|
220
|
|
221 * After Installation
|
|
222 --------------------
|
331
|
223
|
|
224 New packages can only be used by XEmacs after a restart.
|
|
225
|
456
|
226 * Which Packages to install?
|
|
227 ----------------------------
|
331
|
228
|
|
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
|
|
232
|
|
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,
|
|
235 text-modes, time
|
|
236
|
456
|
237 If you are using the XEmacs package tools, don't forget to do:
|
|
238
|
|
239 Packages -> Add Required
|
|
240
|
|
241 To make sure you have everything that the packages you have chosen to
|
|
242 install need.
|
331
|
243
|
|
244 See also '.../etc/PACKAGES' for further descriptions of the individual
|
456
|
245 packages.
|
331
|
246
|
456
|
247 * Upgrading/Removing Packages
|
|
248 -----------------------------
|
331
|
249
|
|
250 As the exact files and their locations contained in a package may
|
438
|
251 change it is recommended to remove a package first before installing a
|
331
|
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.
|
|
256
|
|
257 Note that the interactive package tools included with XEmacs already do
|
|
258 this for you.
|
|
259
|
456
|
260 * User Package directories
|
|
261 --------------------------
|
331
|
262
|
|
263 In addition to the system wide packages, each user can have his own
|
420
|
264 packages installed in "~/.xemacs/xemacs-packages". If you want to
|
331
|
265 install packages there using the interactive tools, you need to set
|
420
|
266 'pui-package-install-dest-dir' to "~/.xemacs/xemacs-packages"
|
331
|
267
|
456
|
268 * Site lisp/Site start
|
|
269 ----------------------
|
331
|
270
|
|
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/
|
424
|
275
|
456
|
276 * Finding the right packages
|
|
277 ----------------------------
|
424
|
278
|
|
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
|
456
|
281 symbol that is likely to be in that package.
|
|
282
|
|
283 For example, if some code you want to use has a (require 'thingatpt)
|
|
284 in it:
|
|
285
|
|
286 M-x package-get-package-provider RET thingatpt RET
|
|
287
|
|
288 which will return something like: (fsf-compat "1.08").
|