2025-07-13 06:04:55 +08:00
|
|
|
{
|
|
|
|
|
config,
|
|
|
|
|
lib,
|
|
|
|
|
pkgs,
|
2025-09-17 00:25:17 +08:00
|
|
|
inputs,
|
2025-07-13 06:04:55 +08:00
|
|
|
...
|
2025-07-13 06:04:55 +08:00
|
|
|
}:
|
|
|
|
|
let
|
2025-08-24 18:20:55 +08:00
|
|
|
cfg = config.david.programs.doom;
|
2025-09-17 00:25:17 +08:00
|
|
|
|
|
|
|
|
inherit (inputs) emacs-overlay nixpkgs;
|
|
|
|
|
inherit (pkgs) system;
|
|
|
|
|
pkgs' = import nixpkgs {
|
|
|
|
|
inherit system;
|
|
|
|
|
overlays = [ emacs-overlay.overlays.default ];
|
|
|
|
|
};
|
2025-07-13 06:04:55 +08:00
|
|
|
in
|
|
|
|
|
{
|
2025-07-13 06:04:55 +08:00
|
|
|
options = {
|
2025-08-24 18:20:55 +08:00
|
|
|
david.programs.doom = {
|
2025-07-13 06:04:55 +08:00
|
|
|
enable = lib.mkEnableOption "doom";
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
config = lib.mkIf cfg.enable {
|
feat(doom): Enable language modules and disable stylix
This commit expands the Doom Emacs configuration by enabling a
wide array of programming language modules and tools. It also
decouples Emacs from the system's Stylix theming for more granular
control.
*** Modules
- Enabled language support for C/C++, Clojure, Go, Haskell,
Python, Rust, Web, and Zig.
- Also enabled the ~company~, ~ibuffer~, ~upload~, and
~graphviz~ modules.
*** UI
- Switched to relative line numbers.
- Enabled icons for the ~vertico~ completion UI.
*** Nix
- Disabled the ~stylix~ target for Emacs to prevent it from
overwriting the Doom theme.
- Added ~imagemagick~ as a dependency.
2025-08-29 11:26:18 +08:00
|
|
|
stylix.targets.emacs.enable = false;
|
2025-07-13 06:04:55 +08:00
|
|
|
services.emacs.enable = true;
|
|
|
|
|
programs.doom-emacs = {
|
|
|
|
|
enable = true;
|
2025-09-17 00:25:17 +08:00
|
|
|
emacs = pkgs'.emacs-igc-pgtk;
|
2025-07-13 06:04:55 +08:00
|
|
|
extraPackages =
|
feat(doom): Enable language modules and disable stylix
This commit expands the Doom Emacs configuration by enabling a
wide array of programming language modules and tools. It also
decouples Emacs from the system's Stylix theming for more granular
control.
*** Modules
- Enabled language support for C/C++, Clojure, Go, Haskell,
Python, Rust, Web, and Zig.
- Also enabled the ~company~, ~ibuffer~, ~upload~, and
~graphviz~ modules.
*** UI
- Switched to relative line numbers.
- Enabled icons for the ~vertico~ completion UI.
*** Nix
- Disabled the ~stylix~ target for Emacs to prevent it from
overwriting the Doom theme.
- Added ~imagemagick~ as a dependency.
2025-08-29 11:26:18 +08:00
|
|
|
ep: with ep; [
|
2025-07-13 06:04:55 +08:00
|
|
|
melpaPackages.telega
|
2025-09-17 00:25:17 +08:00
|
|
|
melpaPackages.nixos-options
|
2025-07-13 06:04:55 +08:00
|
|
|
];
|
|
|
|
|
extraBinPackages = with pkgs; [
|
|
|
|
|
editor-runtime
|
|
|
|
|
|
|
|
|
|
git
|
|
|
|
|
ripgrep
|
|
|
|
|
fd
|
feat(doom): Enable language modules and disable stylix
This commit expands the Doom Emacs configuration by enabling a
wide array of programming language modules and tools. It also
decouples Emacs from the system's Stylix theming for more granular
control.
*** Modules
- Enabled language support for C/C++, Clojure, Go, Haskell,
Python, Rust, Web, and Zig.
- Also enabled the ~company~, ~ibuffer~, ~upload~, and
~graphviz~ modules.
*** UI
- Switched to relative line numbers.
- Enabled icons for the ~vertico~ completion UI.
*** Nix
- Disabled the ~stylix~ target for Emacs to prevent it from
overwriting the Doom theme.
- Added ~imagemagick~ as a dependency.
2025-08-29 11:26:18 +08:00
|
|
|
imagemagick
|
2025-07-13 06:04:55 +08:00
|
|
|
];
|
|
|
|
|
doomDir = ./config;
|
feat(doom): Enable language modules and disable stylix
This commit expands the Doom Emacs configuration by enabling a
wide array of programming language modules and tools. It also
decouples Emacs from the system's Stylix theming for more granular
control.
*** Modules
- Enabled language support for C/C++, Clojure, Go, Haskell,
Python, Rust, Web, and Zig.
- Also enabled the ~company~, ~ibuffer~, ~upload~, and
~graphviz~ modules.
*** UI
- Switched to relative line numbers.
- Enabled icons for the ~vertico~ completion UI.
*** Nix
- Disabled the ~stylix~ target for Emacs to prevent it from
overwriting the Doom theme.
- Added ~imagemagick~ as a dependency.
2025-08-29 11:26:18 +08:00
|
|
|
provideEmacs = true;
|
2025-07-13 06:04:55 +08:00
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
}
|