-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support specifying extra emacs pkgs from nixpkgs #12
Conversation
home-manager.nix
Outdated
To let nix handle a doom dependency '(package! ...)' we can leverage the ':built-in t' argument | ||
Consider the following example for 'vterm' in the doom config packages.el: | ||
(package! vterm :built-in t) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Using vterm
as an example is a little strange: Unstraightened should already be installing epkgs.vterm
if you enable the vterm module. It'll be the pinned version, but if you want to unpin it I'd argue (unpin! vterm)
in packages.el makes more sense than :built-in t
+ extraPackages
.
Your treesit-grammars.with-all-grammars
example makes sense because you can't express that using (package!)
, but since Doom+Unstraightened aren't trying to install that one you don't need the :built-in t
either.
You'd really only need :built-in t
to stop Unstraightened from installing something it would normally install, if you want to further customize it in a way that cannot be expressed in packages.el
. I can't think of great examples off the top of my head, but applying patches to an ELisp package would be one. Can you tweak the wording a bit to make it more clear :built-in t
is only needed when replacing packages, not adding extra ones?
I'd also drop epkgs.vterm
from the example as I think it's less realistic.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've updated the description to be more precise. See cdd7af0
I had the same thought. Rather than |
I've implemented a |
Make it explicit that is now possible to use the home-manager option `extraPackages`
Eluding to likely upcoming support for native TS, at least as an opt-in and eluding to the issue for unstraightened not likely to be chased any further. This is in line with the discussion in the issue..
@marienz Seeing as my todo list for the PR is now complete I was wondering if you have any comments or new changes that you'd like. Please feel free to change/delete any changes I've made to README.md without soliciting an opinion from me 👍 |
Looks great! Thanks for including comprehensive documentation. |
extraPackages
)The following checks succeed:
nix build .\#checks.x86_64-linux.minimalExtraPackages
list-packages
to verify thatvterm
is external. What do you think?nix build .\#checks.x86_64-linux.minimal
I have also bumped my local doom-emacs using my config and the changes in this fork and can anecdotally attest that it works as expected for my (yet undocumented) use-case.
*EDIT: Updating checkbox status.