Difference between revisions of "El-get"
m (add recipes) |
(Clean up grammar in introduction) |
||
(7 intermediate revisions by 2 users not shown) | |||
Line 2: | Line 2: | ||
|name=el-get | |name=el-get | ||
|description=Package Manager | |description=Package Manager | ||
+ | |author=[[Dimitri Fontaine]] | ||
|maintainer=[[Dimitri Fontaine]] | |maintainer=[[Dimitri Fontaine]] | ||
|source=https://github.com/dimitri/el-get | |source=https://github.com/dimitri/el-get | ||
Line 9: | Line 10: | ||
}} | }} | ||
− | ''' | + | '''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 | |
− | differs | + | for the archival of packages. Instead it uses recipe files which |
− | for the archival of packages. Instead it uses recipe files which | + | simply contain pointers to sources and installation methods. |
− | simply | ||
− | El-get makes it possible to | + | 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 = | = Installation = | ||
Line 22: | Line 22: | ||
Add the following into your ~/.emacs : | Add the following into your ~/.emacs : | ||
− | < | + | <pre lang="scheme"> |
(add-to-list 'load-path "~/.emacs.d/el-get/el-get") | (add-to-list 'load-path "~/.emacs.d/el-get/el-get") | ||
Line 31: | Line 31: | ||
(end-of-buffer) | (end-of-buffer) | ||
(eval-print-last-sexp)))) | (eval-print-last-sexp)))) | ||
− | </ | + | </pre> |
− | |||
− | This code will check if el-get is already installed, and if not will do so through git (so you need git : | + | and execute it : |
+ | |||
+ | <pre lang="scheme">M-x eval-current-buffer</pre> | ||
+ | |||
+ | This code will check if el-get is already installed, and if not will do so through git (so you need git : {{UnixCommand | apt-get install git-core}}). | ||
= Usage = | = Usage = | ||
Now let's say you want to install [[Media_player | emms]] for instance. Just type | Now let's say you want to install [[Media_player | emms]] for instance. Just type | ||
− | < | + | <pre lang="scheme"> |
M-x el-get-install RET emms RET | M-x el-get-install RET emms RET | ||
− | </ | + | </pre> |
and wait for the notification. You can now use it right away. | and wait for the notification. You can now use it right away. | ||
Line 56: | Line 59: | ||
For example : | For example : | ||
− | < | + | <pre lang="scheme"> |
(setq my:el-get-packages | (setq my:el-get-packages | ||
'(yasnippet | '(yasnippet | ||
Line 76: | Line 79: | ||
(el-get 'sync my:el-get-packages) | (el-get 'sync my:el-get-packages) | ||
− | </ | + | </pre> |
== Installation from emacswiki == | == Installation from emacswiki == | ||
− | + | {{Command|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 = | = Useful Functions = | ||
Line 98: | Line 101: | ||
[[Category:Third Party Package]] | [[Category:Third Party Package]] | ||
[[Category:Popular Package]] | [[Category:Popular Package]] | ||
+ | [[Category:Convenience]] |
Latest revision as of 15:10, 30 July 2014
Description | Package Manager |
---|---|
Author | Dimitri Fontaine |
Maintainer | Dimitri Fontaine |
Source | https://github.com/dimitri/el-get |
Part of Emacs | no |
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 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.