Skip to content

Commit ab0ed09

Browse files
gitmsrbbatsov
authored andcommitted
Allow the option of not overriding package-user-dir
Currently prelude overrides user-package-dir to be <prelude-dir>/elpa This patch does not change that behaviour, but gives the user to disable it. Adds a variable prelude-override-package-user-dir that by default is t. The path is only set when prelude-override-package-user-dir is true
1 parent 6cace94 commit ab0ed09

File tree

3 files changed

+14
-1
lines changed

3 files changed

+14
-1
lines changed

core/prelude-packages.el

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,8 @@
5050
(load prelude-pinned-packages-file)))
5151

5252
;; set package-user-dir to be relative to Prelude install path
53-
(setq package-user-dir (expand-file-name "elpa" prelude-dir))
53+
(when prelude-override-package-user-dir
54+
(setq package-user-dir (expand-file-name "elpa" prelude-dir)))
5455

5556
(unless package--initialized
5657
(package-initialize))

docs/configuration.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -199,3 +199,12 @@ behaviour, add the following to your config.
199199
Some of these settings (those that don't need to be pre-loaded) can also be set
200200
on a per-file or directory basis by using a file local variable or a
201201
`.dir-locals.el` file.
202+
203+
### package-user-dir
204+
205+
By default, prelude sets the directory where downloaded modules are installed to `<prelude-dir>/elpa`. If you want
206+
to disable this behaviour, set the following variable to nil before loading prelude.
207+
208+
```emacs-lisp
209+
(setq prelude-override-package-user-dir nil)
210+
```

init.el

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,9 @@ by Prelude.")
7272
"This folder stores all the automatically generated save/history-files.")
7373
(defvar prelude-modules-file (expand-file-name "prelude-modules.el" prelude-personal-dir)
7474
"This file contains a list of modules that will be loaded by Prelude.")
75+
(defvar prelude-override-package-user-dir t
76+
"By default prelude installs downloaded packages in <prelude-dir>/elpa.
77+
Set to nil to override this behaviour")
7578

7679
(unless (file-exists-p prelude-savefile-dir)
7780
(make-directory prelude-savefile-dir))

0 commit comments

Comments
 (0)