⚠️ Be aware that this repository is a work-in-progress. Until Doom Emacs v3.0 is released, some links may be broken and documentation may reflect unreleased features and behavior.
This is a library of Doom Emacs modules submitted and maintained by its community. Unlike Doom's official module library, the criteria for these modules is more relaxed and subject to fewer quality checks by Doom's author, but in exchange cover a larger spectrum of features and use-cases.
Each module has their own documentation, accessible in Doom via M-x doom/help-modules
or online at https://docs.doomemacs.org/-/contrib-modules:
-
Clone this repository locally:
$ mkdir -p ~/.doom.d/repos/contrib-modules $ git clone https://github.com/doomemacs/contrib-modules ~/.doom.d/repos/contrib-modules
-
Add the path to its
modules/
directory todoom-modules-load-path
in$DOOMDIR/init.el
:;;; in $DOOMDIR/init.el (add-to-list 'doom-modules-load-path (expand-file-name "repos/contrib-modules/" doom-user-dir))
-
Activate modules contained in this library like normal. For example, to enable this library's
:editor meow
module:(doom! ... :editor meow ...)
-
Run
$ doom sync
to ensure your changes take effect.
-
Register it as a module library from within your
doom!
block, like so:;;; in $DOOMDIR/init.el (doom! (modules :repo "doomemacs/contrib-modules") ...)
-
Activate modules contained in this library like normal. For example, to enable this library's
:editor meow
module:(doom! (modules :repo "doomemacs/contrib-modules") :editor meow ...)
If two libraries have the same module, the order of your
modules
declaration dictates precedence (from highest to lowest). The first matching module will be used. -
Run
$ doom sync
to ensure your changes take effect.
- Run
$ doom upgrade
to update Doom and your module libraries. - Run
$ doom upgrade --modules
to only update your module libraries. - Run
$ doom upgrade --modules doomemacs/contrib-modules
to update only one.
Module libraries can be pinned with :pin "REF"
, where REF is a commit or a
version string (e.g. a partial version string: v22.11
or full one:
v22.11.02
).