1

How would I go about using my own fork of some core packages in spacemacs? So for example I'd like to use my own fork of spaceline, but I would like to keep the modifications that spacemacs does for it.

I tried doing this in layers/+spacemacs/spacemacs-modeline/packages.el:

(setq spacemacs-modeline-packages
      '(
        anzu
        fancy-battery
        ;; dependency of spaceline-all-the-icons which came from
        ;; the emacs wiki, we fetch it from Emacs Mirror for now.
        ;; TODO eventually remove this if font-lock+ is available
        ;; in an ELPA repository.
        (font-lock+ :step pre
                    :location (recipe :fetcher github
                                      :repo emacsmirror/font-lock-plus))
        neotree
        (spaceline :location local)
        (spaceline-all-the-icons :location local)
        symon
        (vim-powerline :location local)
        ))

and symlinked the local copy of my forks to spaceline and spaceline-all-the-icons to the local folder, but it just uninstalled all the packages related to those and gave me errors about undefined functions

1

There are many ways to do this, but the simplest of all is changing the location parameter of use-package to point directly to your own fork:

(spaceline :location (recipe :fetcher github
                             :repo me/spaceline))

In case you want to use the local location, then you'll have to have a folder called local at the same directory level as the packages.el file, and the local folder will have subfolders with package names. See example from the spacemacs-defaults layer:

.
├── local/
│   └── help-fns+/
│       └── help-fns+.el
├── README.org
├── config.el
├── funcs.el
├── keybindings.el
└── packages.el
| improve this answer | |
  • Yeah, that's exactly what I did. I need to try it out again. And try the github recipe too. – Tuomo Syvänperä Apr 24 '18 at 3:04

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.