NixOSのパッケージで構成されたEmacsデーモン

NixOSのパッケージで構成されたEmacsデーモン

これNixOS マニュアル特定のパッケージを使用してEmacsをデーモンとして起動するには、次の設定をお勧めします。

services.emacs.enable = true;
services.emacs.package = import /home/cassou/.emacs.d { pkgs = pkgs; };

しかし、これらの部分が何を意味するのかは明確ではありませんpkgs = pkgs。私のファイルにconfiguration.nix必要なEmacsパッケージのリストを指定しました。

  environment.systemPackages = with pkgs; [
    # Emacs
    (emacsWithPackages (with emacsPackagesNg; [
      evil
      haskell-mode
      intero
      nix-mode
      org
      python-mode
    ]))
  }

私の質問:Emacsデーモンにこれらのパッケージセットを自動的に使用させるにはどうすればよいですか?現在はそうではありません(直接起動するemacだけが可能です)。

ベストアンサー1

進行中の回答(下記参照)

Nix言語構文を読んだ後、次の解決策が得られました。移動する構成中のパッケージ定義services.emacs.package

  services.emacs.enable = true;
  services.emacs.package = with pkgs; (emacsWithPackages (with emacsPackagesNg; [
      evil
      haskell-mode
      intero
      nix-mode
      org
      python-mode
  ]));

これが機能している間、リストに新しいパッケージを追加するたびに機能しません(emacsはそのパッケージをロードしません)。これを行う正しい方法は何ですか?

おすすめ記事