annotate .elisp/settings/00.bootstrap.el @ 453:6f3342c9e53d

emacs: use exec-path-from-shell-initialize on OS X This should mean I can start emacs like a normal application and have things work.
author Augie Fackler <raf@durin42.com>
date Sat, 06 Jan 2018 17:03:00 -0500
parents c2a49960f11f
children b60cd2f46acd
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
219
bb74667967e1 emacs bootstrap: record setup command for sanity
Augie Fackler <durin42@gmail.com>
parents: 214
diff changeset
1 ;; emacs -l .elisp/settings/00.bootstrap.el --batch -f af-bootstrap-packages
bb74667967e1 emacs bootstrap: record setup command for sanity
Augie Fackler <durin42@gmail.com>
parents: 214
diff changeset
2 ;; Use the above for moving into a new machine
214
2a4efba0fe8b emacs: move package bootstrap to its own file
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
3 (add-to-list 'load-path (expand-file-name "~/.elisp"))
336
ea73ef5dc38c emacs: avoid weird package.el breakage with newish packages
Augie Fackler <raf@durin42.com>
parents: 328
diff changeset
4
ea73ef5dc38c emacs: avoid weird package.el breakage with newish packages
Augie Fackler <raf@durin42.com>
parents: 328
diff changeset
5 ;; emacs 23 compat hack from Lucas Bergman
ea73ef5dc38c emacs: avoid weird package.el breakage with newish packages
Augie Fackler <raf@durin42.com>
parents: 328
diff changeset
6 (unless (fboundp 'package-refresh-contents)
ea73ef5dc38c emacs: avoid weird package.el breakage with newish packages
Augie Fackler <raf@durin42.com>
parents: 328
diff changeset
7 ;; If ELPA support isn't built in, we're in Emacs <=23. Normally, one
ea73ef5dc38c emacs: avoid weird package.el breakage with newish packages
Augie Fackler <raf@durin42.com>
parents: 328
diff changeset
8 ;; would bootstrap ELPA from the source, tromey.com, but that sucks,
ea73ef5dc38c emacs: avoid weird package.el breakage with newish packages
Augie Fackler <raf@durin42.com>
parents: 328
diff changeset
9 ;; because that version of package.el doesn't support multiple archives
ea73ef5dc38c emacs: avoid weird package.el breakage with newish packages
Augie Fackler <raf@durin42.com>
parents: 328
diff changeset
10 ;; even in 2012. old/package.el is from http://bit.ly/pkg-el23, which is
393
08755f0a9f1f bootstrap: drop trailing whitespace
Augie Fackler <raf@durin42.com>
parents: 385
diff changeset
11 ;; cited at https://github.com/technomancy/package.el as the last emacs23
336
ea73ef5dc38c emacs: avoid weird package.el breakage with newish packages
Augie Fackler <raf@durin42.com>
parents: 328
diff changeset
12 ;; version of package.el.
ea73ef5dc38c emacs: avoid weird package.el breakage with newish packages
Augie Fackler <raf@durin42.com>
parents: 328
diff changeset
13 (unless (load (expand-file-name "~/.elisp/old/package.el"))
ea73ef5dc38c emacs: avoid weird package.el breakage with newish packages
Augie Fackler <raf@durin42.com>
parents: 328
diff changeset
14 (error "ELPA is not in Emacs, and local package.el failed to load.")))
ea73ef5dc38c emacs: avoid weird package.el breakage with newish packages
Augie Fackler <raf@durin42.com>
parents: 328
diff changeset
15
ea73ef5dc38c emacs: avoid weird package.el breakage with newish packages
Augie Fackler <raf@durin42.com>
parents: 328
diff changeset
16
214
2a4efba0fe8b emacs: move package bootstrap to its own file
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
17 (package-initialize)
2a4efba0fe8b emacs: move package bootstrap to its own file
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
18
452
c2a49960f11f emacs: clean up obsolete packages and archives
Augie Fackler <raf@durin42.com>
parents: 410
diff changeset
19 (setq package-archives '(("melpa" . "http://melpa.milkbox.net/packages/")
328
4f49d70f1b69 emacs: update path to ELPA repository
Augie Fackler <raf@durin42.com>
parents: 323
diff changeset
20 ("elpa" . "http://elpa.gnu.org/packages/")))
214
2a4efba0fe8b emacs: move package bootstrap to its own file
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
21
2a4efba0fe8b emacs: move package bootstrap to its own file
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
22 (defun af-bootstrap-packages ()
2a4efba0fe8b emacs: move package bootstrap to its own file
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
23 (interactive)
2a4efba0fe8b emacs: move package bootstrap to its own file
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
24 (unless package-archive-contents (package-refresh-contents))
452
c2a49960f11f emacs: clean up obsolete packages and archives
Augie Fackler <raf@durin42.com>
parents: 410
diff changeset
25 (dolist (pack '(http-twiddle
214
2a4efba0fe8b emacs: move package bootstrap to its own file
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
26 nose
397
98484e1f564f rust: lots of new configs to make working with rust code easy
Augie Fackler <raf@durin42.com>
parents: 393
diff changeset
27 use-package
410
76eb2c250b6f emacs: start using smart-modeline and rich-minority
Augie Fackler <raf@durin42.com>
parents: 397
diff changeset
28 smart-mode-line
76eb2c250b6f emacs: start using smart-modeline and rich-minority
Augie Fackler <raf@durin42.com>
parents: 397
diff changeset
29 rich-minority
453
6f3342c9e53d emacs: use exec-path-from-shell-initialize on OS X
Augie Fackler <raf@durin42.com>
parents: 452
diff changeset
30 exec-path-from-shell
336
ea73ef5dc38c emacs: avoid weird package.el breakage with newish packages
Augie Fackler <raf@durin42.com>
parents: 328
diff changeset
31
214
2a4efba0fe8b emacs: move package bootstrap to its own file
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
32 ;; disabled until I don't need a modified version
2a4efba0fe8b emacs: move package bootstrap to its own file
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
33 ;; textmate
336
ea73ef5dc38c emacs: avoid weird package.el breakage with newish packages
Augie Fackler <raf@durin42.com>
parents: 328
diff changeset
34
214
2a4efba0fe8b emacs: move package bootstrap to its own file
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
35 iedit
336
ea73ef5dc38c emacs: avoid weird package.el breakage with newish packages
Augie Fackler <raf@durin42.com>
parents: 328
diff changeset
36
214
2a4efba0fe8b emacs: move package bootstrap to its own file
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
37 ;; from elpa
2a4efba0fe8b emacs: move package bootstrap to its own file
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
38 js2-mode
220
07c671c9610c emacs: require magit
Augie Fackler <durin42@gmail.com>
parents: 219
diff changeset
39 magit
314
7cb31ed262f0 emacs: require markdown-mode
Augie Fackler <raf@durin42.com>
parents: 303
diff changeset
40 markdown-mode
214
2a4efba0fe8b emacs: move package bootstrap to its own file
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
41 paredit
236
3e1ec121efaf emacs: use smex as a replacement for execute-extended-command
Augie Fackler <durin42@gmail.com>
parents: 220
diff changeset
42 smex
276
46979cef73b6 emacs: require and configure company mode
Augie Fackler <raf@durin42.com>
parents: 248
diff changeset
43 yaml-mode
303
6fd7c78744a6 emacs: install wgrep all the time
Augie Fackler <raf@durin42.com>
parents: 299
diff changeset
44 company
6fd7c78744a6 emacs: install wgrep all the time
Augie Fackler <raf@durin42.com>
parents: 299
diff changeset
45 wgrep
385
98480bc457ab emacs: load and use monky
Augie Fackler <raf@durin42.com>
parents: 384
diff changeset
46 monky
384
7e97572ac429 emacs: start using git-gutter-mode with Mercurial enabled
Augie Fackler <raf@durin42.com>
parents: 336
diff changeset
47 git-gutter
323
aa5afa13e12c emacs: add go-eldoc for better go programming
Augie Fackler <raf@durin42.com>
parents: 314
diff changeset
48 ;; for go-eldoc
aa5afa13e12c emacs: add go-eldoc for better go programming
Augie Fackler <raf@durin42.com>
parents: 314
diff changeset
49 popup
aa5afa13e12c emacs: add go-eldoc for better go programming
Augie Fackler <raf@durin42.com>
parents: 314
diff changeset
50 auto-complete
aa5afa13e12c emacs: add go-eldoc for better go programming
Augie Fackler <raf@durin42.com>
parents: 314
diff changeset
51 go-autocomplete
aa5afa13e12c emacs: add go-eldoc for better go programming
Augie Fackler <raf@durin42.com>
parents: 314
diff changeset
52 go-eldoc
397
98484e1f564f rust: lots of new configs to make working with rust code easy
Augie Fackler <raf@durin42.com>
parents: 393
diff changeset
53 ;; rust
98484e1f564f rust: lots of new configs to make working with rust code easy
Augie Fackler <raf@durin42.com>
parents: 393
diff changeset
54 rust-mode
98484e1f564f rust: lots of new configs to make working with rust code easy
Augie Fackler <raf@durin42.com>
parents: 393
diff changeset
55 cargo
98484e1f564f rust: lots of new configs to make working with rust code easy
Augie Fackler <raf@durin42.com>
parents: 393
diff changeset
56 racer
98484e1f564f rust: lots of new configs to make working with rust code easy
Augie Fackler <raf@durin42.com>
parents: 393
diff changeset
57 company-racer
98484e1f564f rust: lots of new configs to make working with rust code easy
Augie Fackler <raf@durin42.com>
parents: 393
diff changeset
58 flycheck-rust
303
6fd7c78744a6 emacs: install wgrep all the time
Augie Fackler <raf@durin42.com>
parents: 299
diff changeset
59 ))
214
2a4efba0fe8b emacs: move package bootstrap to its own file
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
60 (unless (or (member pack package-activated-list)
2a4efba0fe8b emacs: move package bootstrap to its own file
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
61 (functionp pack))
2a4efba0fe8b emacs: move package bootstrap to its own file
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
62 (message "Installing %s" (symbol-name pack))
2a4efba0fe8b emacs: move package bootstrap to its own file
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
63 (package-install pack))))