El-get

From WikEmacs
Revision as of 15:10, 30 July 2014 by 132.250.22.5 (talk) (Clean up grammar in introduction)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

El-get is a popular package manager for Emacs. El-get supports many different back ends. El-get differs from other package managers by not having a central repository for the archival of packages. Instead it uses recipe files which simply contain pointers to sources and installation methods.

el-get
Description Package Manager
Author Dimitri Fontaine
Maintainer Dimitri Fontaine
Source https://github.com/dimitri/el-get
Part of Emacs no


El-get makes it possible to retrieve scripts and extensions from many sources (git, emacswiki, elpa, url, file, …). It also allows one to automate their installation by writing all the 'require' and other directives needed in ~/.emacs.d/el-get, byte-compiling what is needed, and update / synchronize all the installed extensions. It works asynchronously, so you can carry on using emacs and wait for a notification.

Installation

Add the following into your ~/.emacs :

(add-to-list 'load-path "~/.emacs.d/el-get/el-get")

(unless (require 'el-get nil t)
  (url-retrieve
   "https://raw.github.com/dimitri/el-get/master/el-get-install.el"
   (lambda (s)
     (end-of-buffer)
     (eval-print-last-sexp))))

and execute it :

M-x eval-current-buffer

This code will check if el-get is already installed, and if not will do so through git (so you need git : apt-get install git-core).

Usage

Now let's say you want to install emms for instance. Just type

M-x el-get-install RET emms RET

and wait for the notification. You can now use it right away.

It works either with small extensions or with huge ones, like org-mode.

If you don't want an extension any more : el-get-remove. Want to update ? el-get-update, and so on.

Basic Setup

Save and synchronize a list of extensions

You have to declare a list of extensions in your .emacs. Emacs will check at start-up if they are installed and if not, install them.

For example :

(setq my:el-get-packages
      '(yasnippet
        org-mode
        anything
        emms
        dired-sort
        auto-dictionnary
        autopair
        color-theme
        dired+
        google-maps
        org2blog
        rainbow-mode
        switch-window
        sr-speedbar
        typopunct
        ))

(el-get 'sync my:el-get-packages)

Installation from emacswiki

M-x el-get-emacswiki-refresh

wait for the notification and from now on, all the files hosted on Emacswiki are ready to be installed with el-get-install.

Useful Functions

Add a recipe

El-get comes with a good number of recipes, but you can add yours in your .emacs too.


To see more of its functionalities, see the README file on github.

See also

package.el aka ELPA, the Emacs Lisp Package Archive.