Discourage unpinning all packages

This commit is contained in:
Henrik Lissner 2020-04-08 13:57:56 -04:00
parent 8d77518710
commit 63a71ec90f
No known key found for this signature in database
GPG key ID: 5F6C0EA160557395
2 changed files with 21 additions and 10 deletions

View file

@ -4,19 +4,15 @@
;; To install a package with Doom you must declare them here, run 'doom sync' on
;; the command line, then restart Emacs for the changes to take effect.
;; Alternatively, use M-x doom/reload.
;;
;; WARNING: Disabling core packages listed in ~/.emacs.d/core/packages.el may
;; have nasty side-effects and is not recommended.
;; All of Doom's packages are pinned to a specific commit, and updated from
;; release to release. To un-pin all packages and live on the edge, do:
;(unpin! t)
;; ...but to unpin a single package:
;; Doom's packages are pinned to a specific commit and updated from release to
;; release. The `unpin!' macro allows you to unpin single packages...
;(unpin! pinned-package)
;; Use it to unpin multiple packages
;; ...or multiple packages
;(unpin! pinned-package another-pinned-package)
;; ...Or *all* packages (NOT RECOMMENDED; will likely break things)
;(unpin! t)
;; To install SOME-PACKAGE from MELPA, ELPA or emacsmirror:

View file

@ -717,14 +717,29 @@ To unpin a package, use the ~unpin!~ macro:
;; Or to unpin an entire category of modules
(unpin! :completion :lang :tools)
;; This will work too, if you prefer the syntax, but it provides no concise
;; syntax for unpinning multiple packages:
(package! helm :pin nil)
#+END_SRC
To unpin all packages and make Doom Emacs rolling release, use
Though it is *highly* discouraged, you may unpin all packages and make Doom
Emacs rolling release:
#+BEGIN_SRC elisp
(unpin! t)
#+END_SRC
#+begin_quote
Unpinning all packages is discouraged because Doom's modules are designed
against the pinned versions of its packages. More volatile packages (like
lsp-mode, ein and org) change rapidly, and are likely to cause breakages if
unpinned.
Instead, it's a better idea to selectively unpin packages, or repin them to the
exact commit you want.
#+end_quote
*** Disabling packages
The ~package!~ macro possesses a ~:disable~ property: