Skip to content

ardumont/prelude-packs

Repository files navigation

prelude-packs Build Status

A prelude packs setup to use with the most excellent prelude.

Context

  • I used emacs-starter-kit (which is great) then migrated to emacs-live (which is also great).
  • Along the way, I developed some code on my own.
  • This code, little by little, became standardized the emacs-live way through the notion of packs (it's still emacs-lisp inside).
  • I still like this notion. It goes well with the separation of concerns concept.
  • So I kept them, agnostified them to permit the use outside of emacs-live.
  • Now I can discover any other emacs distribution (prelude for example) without losing my existing code.
  • This code is rather user agnostic too so it can be used by other people too.

Packs

Some packs still need some lovin' but most are ready:

Pack name Description
install-packages-pack Some installation repository setup + function to install list of packages
scratch-pack Tinkering pack
blog-pack Blog setup to rapidly post article from org-mode to wordpress
haskell-pack Haskell environment setup
orgmode-pack Some org-mode specificities
lisp-pack Lisp environment setup
buffer-pack Some buffer manipulation functions
git-pack Git specific setup
mail-pack Email accounts setup (one or multiple accounts through authentication file setup)
shell-pack Shell setup
browser-pack Browser specific tryouts
chat-pack IRC setup
clojure-pack Clojure override from emacs-live's defaults + other stuff
clojurescript-pack Clojurescript setup
lisp-pack All lisp (clojure, common-lisp) setup pack
elisp-pack Emacs-lisp pack (more specific than the previous one)
macro-pack Macro setup
caml-pack ML family languages setup
twitter-pack Twitter setup
puppet-pack Puppet setup
chrome-pack Chrome setup
scala-pack Scala pack
el-get-pack Attempt to permit the use of el-get
groovy-pack Pack to add groovy mode
modeline-pack Improve modeline rendering
php-pack PHP mode
prelude-pack A pack to override some prelude core default (bindings mostly)
stumpwm-pack Stumpwm tinkering from the REPL
pres-pack Pack to make presentation fast (using org-mode, org-reveal and reveal.js)
irc-pack Pack to setup IRC once with .netrc file

Note This pack is an orchestrator. You still need to configure those packs independently for the overall to be fully functional. Report yourself to each pack's README.md file to know what are those steps.

Install

Pre-requisite

Prelude

Install prelude

Long story short:

git clone git://github.com/bbatsov/prelude.git ~/.emacs.d

Clone

Clone the repository.

mr -j4 update

Note: mr being https://myrepos.branchable.com/

Packs

Default pack needed

If you want to use one of those packs, you need at minimum install-packages-pack. This one is in charge of configuring different repositories (marmalade, melpa, melpa-stable, milkbox, elpa, etc...).

Also, it installs a utility function install-packages-pack/install-packs to download packages from those repositories. This utility function is used throughout all the referenced packs.

Adding/Removing packs

To add or remove packs, simply edit the .prelude-packs.el and comments packs from the list.

For example, to simply install orgmode-pack and the blog-pack, do as follow:

;;(use install-packages-pack)
;;(use prelude-pack)
;;(use theme-pack)
;;(use el-get-pack)
;;(use buffer-pack)
;;(use scratch-pack)

(use blog-pack)

;;(use haskell-pack)

(use orgmode-pack)

;;(use lisp-pack)
;;(use git-pack)
;;(use mail-pack)
;;(use shell-pack)
;;(use browser-pack)
;;(use chat-pack)
;;(use clojure-pack)
;;(use clojurescript-pack)
;;(use caml-pack)
;;(use modeline-pack)
;;(use twitter-pack)
;;(use puppet-pack)
;;(use chrome-pack)
;;(use macro-pack)
;;(use scala-pack)
;;(use elisp-pack)
;;(use groovy-pack)
;;(use php-pack)
;;(use stumpwm-pack)
;;(use pres-pack)
;;(use irc-pack)
;;(use help-pack)

Deploy

Launch the deployer:

/path/to/prelude-packs/deploy.sh

This will trigger the creation of 1 link in your home folder towards your prelude-pack's installation folder.

Example:

tony@dagobah(0,43,) 15:30:39 ~/repo/perso/emacs-live-packs (master) $ ll ~/.emacs*
lrwxrwxrwx 1 tony tony 32 déc.  18 03:28 /home/tony/.emacs.d -> /home/tony/repo/perso/prelude
lrwxrwxrwx 1 tony tony 39 avril 15 12:38 /home/tony/.prelude-packs -> /home/tony/repo/perso/prelude-packs/

Note This will create a file prelude-packs-delegate.el in your ~/.emacs.d/personal/ folder that will be loaded by prelude and trigger the prelude-packs loading.

Start

Now start emacs.

emacs --daemon

This will install emacs packages needed if they are not already installed.

Faster start

Compiling the code will help.

M-x prelude-packs/byte-compile!

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published