syl20bnr / spacemacs

A community-driven Emacs distribution - The best editor is neither Emacs nor Vim, it's Emacs *and* Vim!
http://spacemacs.org
GNU General Public License v3.0
23.67k stars 4.89k forks source link

Discussion: How to proceed with a new distribution? #10330

Closed punassuming closed 4 years ago

punassuming commented 6 years ago

I am looking into what it will take to make additional spacemacs distribution. Currently, the way we have the distribution set up, spacemacs-bootstrap is run regardless of setting in dotspacemacs, followed by the distribution selected. spacemacs distr links to spacemacs-base automatically and both are loaded; however, there is currently no way to load plain vanilla emacs with the layer capability of Spacemacs. If we make an empty distribution layer, it will load, but half of the layers defined depend on functionality defined in spacemacs-base.

For example, all evilify- configurations and hooks depend on spacemacs-base being loaded on startup, and you will get errors. To fix this, I think we need to move some of the core configuration that is used across all layers into the -bootstrap distribution and out of -base. Also, the -base distribution already has a lot of opinionated settings and configurations that make it difficult to overwrite in the case of making a new emacs distribution.

Also, functionality that is set in dotspacemacs variables is used and defined in spacemacs-base and individual layers (like helm for instance). Shouldn't we be keeping layer specific settings out of the primary dotspacemacs configuration variables and defined within the layer? We have very good documentation already, so moving this documentation to the pertinent layer wouldn't be that difficult.

This is along the lines of what I am thinking:

I don't know if this is already a milestone or if there has been some discussion about this topic, but I wanted to see what the general consensus was at this point.

github-actions[bot] commented 4 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Please let us know if this issue is still valid!