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").