This is a my set of configuration files to set-up Emacs, which was created using a literate style for trying to cleanup the hassle of having multiple packages and keeping the configuration available for different machines. This configuration assumes a recent version of Emacs (Emacs-24.4) and git installed in a Linux environment (Other systems not tested)
This installation is based on the ideas from Emacs starter kit to configure packages and literate Emacs configuration, however I haven’t decided to use it as the amount of configuration was beyond my requirements at this point, given that I started using vanilla Emacs, and I couldn’t get used to other people’s configuration (I tried other options such as Emacs-prelude), thus I have my own which has evolved piece by piece.
Similar to Emacs starter kit I have decided to use use-package as is the best documented option, and I don’t require any additional feature from some other package managers such a req-package and el-get
This Readme file generates the corresponding init.el file that is used in other literate Emacs systems, which is included as part of the git repository for ease of use. To ensure that req-package is available I used a the same trick shown in el-get configuration section
To Install this configuration file just clone the repository and use it as your .emacs.d
, to do so you can try the following code
#!/bin/bash
git clone https://github.com/joafigue/emacs_literate_config.git
mv ~/.emacs.d ~/emacs.d.backup
mv emacs_literate_config ~/.emacs.d
Please bear into consideration that the first emacs execution will be slow as the required packages are installed and configured, following sessions will be much faster
The init file will make sure that use-package in a similar way as shown by Emacs-Bootstrap package configuration before loading the rest of the org-configuration files.
Also I have no intention of using a package that is not available through either the default gnu-repository, melpa-stable or the org-mode repository
;;; init.el --- Load all org-related files
;; This is the first thing to get loaded.
;;
;; Ensure use-package is available from melpa-stable
(package-initialize)
(when (not package-archive-contents)
(package-refresh-contents))
(unless (package-installed-p 'use-package)
(add-to-list 'package-archives
'("melpa-stable" . "http://stable.melpa.org/packages/") t)
(package-refresh-contents)
(package-initialize)
(package-install 'use-package))
;; Setting directories to load files
(setq emacs-files-dir (file-name-directory (or load-file-name (buffer-file-name))))
;; Load up Org Mode and Babel
(use-package org)
;; Load org-files
(org-babel-load-file (expand-file-name "Main.org" emacs-files-dir))
(org-babel-load-file (expand-file-name "jf_org_ref_reftex_setup.org" emacs-files-dir))