What do you expect from a package manager for Emacs
Posted
by tarsius
on Stack Overflow
See other posts from Stack Overflow
or by tarsius
Published on 2009-01-17T23:04:44Z
Indexed on
2010/04/12
12:23 UTC
Read the original article
Hit count: 468
Although several hundred Emacs Lisp libraries exist GNU Emacs does not have an (internal) package manager.
I guess that most users would agree that it is currently rather inconvenient to find, install and especially keep up-to-date Emacs Lisp libraries.
These pages make life a bit easier
- Emacs Lisp List - Problem: I see dead people (links).
- Emacswiki - Problem: May contain traces of nuts (malicious code).
These are some package managers
- XEmacs package manager
- package.el - ELPA
- pases
- install.el
- install-elisp.el
- plugin.el
- use-package.el
- jem-pkg.el
- epkg/elm - the one I am working.
And this are some packages that provide functionality that might be useful in a package manager
- ell.el - Browse the Emacs Lisp List
- genauto.el - helps generate autoloads for your elisp packages
- date-calc.el - date calculation and parsing routines
- strptime.el - partial implementation of POSIX date and time parsing
- wikirel.el - Visit relevant pages on the Emacs Wiki
- loadhist.el, lib-requires.el, elisp-depend.el - Commands to list Emacs Lisp library dependencies.
- project-root.el - Define a project root and take actions based upon it
So I would like to know from you what you consider important/unimportant/supplementary... in a package manager for Emacs.
Some ideas
- Many packages (incorporate the Emacs Lisp List and other lists of libraries).
- Only packages that have been tested.
- Support for more than one package archive (so people can choose between many/tested packages).
- Dependency calculated based on required features only.
- Dependencies take particular versions into account.
- Only use versions that have been released upstream.
- Use versions from version control systems if available.
- Packages are categorized.
- Packages can be uninstalled and updated not only installed.
- Support creating fork of upstream version of packages.
- Support publishing these forks.
- Support choosing a fork.
- After installation packages are activated.
- Generate autoloads.
- Integration with Emacswiki (see wikirel.el).
- Users can tag, comment ... packages and share that information.
- Only FSF-assigned/GPL/FOSS software or don't care about license.
- Package manager should be integrated in Emacs.
- Support contacting author.
- Lots of metadata.
- Suggest alternatives before installing a particular package.
Some discussions about the subject at hand
I am hoping for these kinds of answers
- Pointers to more implementations, discussions etc.
- Lengthy descriptions of a set of features that make up your ideal package manager.
- Descriptions of one particular disired/undisired feature. This has the advantage that the regular voting mechanism allows us to see what features are most welcomed. Feel free to elaborate on my ideas from above.
- Surprise me.
© Stack Overflow or respective owner