37 lines
863 B
Nix
37 lines
863 B
Nix
{ lib, pkgs, config, ... }:
|
|
|
|
let kakoune = import ./kakoune.nix; in
|
|
|
|
with lib; {
|
|
|
|
options.editor = {
|
|
|
|
kak.enable = (mkEnableOption "kakoune editor") // { default = true; };
|
|
|
|
kak.rust = mkEnableOption "Rust support in Kakoune";
|
|
kak.ts = mkEnableOption "TypeScript support in Kakoune";
|
|
kak.haskell = mkEnableOption "Haskell support in Kakoune";
|
|
kak.python = mkEnableOption "Python 3.9 support in Kakoune";
|
|
kak.nix = (mkEnableOption "Nix support in Kakoune") // { default = true; };
|
|
|
|
};
|
|
|
|
config = with config.editor; mkIf (kak.enable) {
|
|
|
|
environment.systemPackages = [
|
|
(kakoune {
|
|
|
|
inherit (kak) haskell python rust nix;
|
|
typescript = kak.ts;
|
|
|
|
kak-crosshairs = pkgs.kakounePlugins.kak-crosshairs;
|
|
|
|
inherit pkgs lib;
|
|
theme = config.riley.theme;
|
|
|
|
})
|
|
];
|
|
|
|
};
|
|
|
|
}
|