From 8fdb6dca822fe5900661d99592bd265e808c8929 Mon Sep 17 00:00:00 2001 From: Tim McCarthy Date: Thu, 3 Oct 2024 14:23:29 -0700 Subject: [PATCH] Fix aspell on Linux (and probably Mac, too) --- nix/modules/emacs.nix | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/nix/modules/emacs.nix b/nix/modules/emacs.nix index be58b47..4fbfdab 100644 --- a/nix/modules/emacs.nix +++ b/nix/modules/emacs.nix @@ -3,6 +3,7 @@ with config.lib.file; let dotdir = "${config.home.homeDirectory}/.dotfiles"; isOnMac = pkgs.stdenv.hostPlatform.isDarwin; emacsWithPackages = (pkgs.emacsPackagesFor pkgs.emacs29).emacsWithPackages; + aspell = (pkgs.aspellWithDicts (d: [d.en])); in { home.packages = with pkgs; let @@ -12,7 +13,7 @@ in ])) zstd emacs-lsp-booster - (aspellWithDicts (d: [d.en])) + aspell ]; macPackages = basePackages ++ [ coreutils ]; in @@ -21,4 +22,12 @@ in xdg.configFile = { "emacs".source = mkOutOfStoreSymlink "${dotdir}/thoom-emacs"; }; + + # The aspell wrapper created by aspellWithDicts only wraps the + # binary, not the library, so we need to write a config file that + # tells it where to find things for libenchant to work. See: + # https://discourse.nixos.org/t/aspell-dictionaries-are-not-available-to-enchant/39254 + home.file.".aspell.conf".text = '' +dict-dir ${aspell}/lib/aspell +''; }