Emacs: Difference between revisions

imported>Jeslie0
Added information on installing emacs when using a system flake
imported>Jeslie0
Added information on installing packages like vterm, through Nix
Line 58: Line 58:


The [https://github.com/hlissner/doom-emacs Doom Emacs] project provides a framework with a better default configuration and modules for different programming languages. Since it uses pinning in its configuration for dependencies, it is possible to package Doom Emacs with nix (see [https://github.com/vlaci/nix-doom-emacs nix-doom-emacs])
The [https://github.com/hlissner/doom-emacs Doom Emacs] project provides a framework with a better default configuration and modules for different programming languages. Since it uses pinning in its configuration for dependencies, it is possible to package Doom Emacs with nix (see [https://github.com/vlaci/nix-doom-emacs nix-doom-emacs])
=== Packages ===
One can mix and match whether Emacs packages are installed by Nix or Emacs. This can be particularly useful for Emacs packages that need to be built, such as vterm. One way to install Emacs packages through Nix is by the following, replacing {{ic|emacsPgtkGcc}} with the variant in use:
environment.systemPackages = with pkgs;
  [ ...
    ((emacsPackagesFor emacsPgtkGcc).emacsWithPackages (epkgs: [ epkgs.vterm ]))
    ...
  ];
To make the packages available to {{ic|emacsclient}}, one can do the following:
services.emacs.package = with pkgs; ((emacsPackagesFor emacsPgtkGcc).emacsWithPackages (epkgs: [ epkgs.vterm ]));


[[Category:NixOS]]
[[Category:NixOS]]
[[Category:Incomplete]]
[[Category:Incomplete]]
[[Category:Applications]]
[[Category:Applications]]