* package.el - package-directory-list (v) list of additional directories containing elpa packages. In particular this has an emacs version specific directory where we can install byte compiled files. Note that having the same package-$version in two different directories in this list seems not to work out well, since the ordering of the constructed load-path is backwards from the list. Or something. - package-unpack (f) does the actual installation, using dynamically bound *package-user-dir*. The current version is safe to call without network access, but it's probably considered internal. * workflow ** at package build time - install a copied/modified package-unpack into $(DESTDIR)/usr/share/emacs/site-lisp/elpa-src This is intentionally not ending in elpa, because of the problems discussed immediately above with multiple versions of a package. - install emacsen-common helper scripts into $(DESTDIR)/usr/lib/emacsen-common/packages/{compat,install,remove} - add postinst / prerm cookies to maintainer scripts ** at package install time - prerm and postinst as per a normal emacsen-common using package - don't install a startup file into /etc; that's one of our selling points.