diff --git a/emacs.org b/emacs.org index d8aede1..3750df8 100644 --- a/emacs.org +++ b/emacs.org @@ -67,7 +67,16 @@ TODO: make this stuff work sanely in emacs org mode and via external tangling. N *** use-package bootstrap -This configuration is using *use-package* extensively. Install it earlyso we can use it elsewhere. +This configuration is using *use-package* extensively. Install it early so we can +use it elsewhere. + +First strip out any existing org load-path prior to package initialization. + +#+BEGIN_SRC emacs-lisp +(require 'cl) +(setq load-path (remove-if (lambda (x) (string-match-p "org$" x)) load-path)) +(setq load-path (remove-if (lambda (x) (string-match-p "org-" x)) load-path)) +#+END_SRC #+BEGIN_SRC emacs-lisp (unless (package-installed-p 'use-package) @@ -80,8 +89,23 @@ This configuration is using *use-package* extensively. Install it earlyso we can (setq use-package-verbose t) #+END_SRC +Then, before doing *ANY* package initialization, make use-package setup/use org +from the package repos and pin it so that other packages can't muck that up. + #+BEGIN_SRC emacs-lisp -(use-package auto-package-update :ensure t :defer t) +(use-package org + :ensure org-plus-contrib + :pin org) +#+END_SRC + +*** auto-package-update + +Make updating use-package installed package.el packages easy peasy. + +#+BEGIN_SRC emacs-lisp +(use-package auto-package-update + :ensure t + :defer t) #+END_SRC *** match end of string function