os/profiles/develop/kakoune/default.nix

48 lines
1.2 KiB
Nix
Raw Normal View History

2020-01-04 05:06:31 +00:00
{ pkgs, ... }: {
2019-12-15 07:03:57 +00:00
environment.systemPackages = with pkgs; [
cquery
kak-lsp
kakoune-config
2019-12-15 07:03:57 +00:00
kakoune-unwrapped
2020-01-04 05:06:31 +00:00
nixfmt
2019-12-15 07:03:57 +00:00
python3Packages.python-language-server
rustup
];
environment.etc = {
"xdg/kak/kakrc".source = ./kakrc;
"xdg/kak/autoload/plugins".source = ./plugins;
"xdg/kak/autoload/lint".source = ./lint;
"xdg/kak/autoload/lsp".source = ./lsp;
2020-01-04 05:06:31 +00:00
"xdg/kak/autoload/default".source =
"${pkgs.kakoune-unwrapped}/share/kak/rc";
2019-12-15 07:03:57 +00:00
};
nixpkgs.overlays = let
kak = final: prev: {
kakoune = prev.kakoune.override {
configure.plugins = with prev.kakounePlugins; [
(kak-fzf.override { fzf = prev.skim; })
2019-12-15 07:03:57 +00:00
kak-auto-pairs
kak-buffers
kak-powerline
];
};
kakoune-config = prev.writeShellScriptBin "k" ''
XDG_CONFIG_HOME=/etc/xdg exec ${final.kakoune}/bin/kak "$@"
'';
kakoune-unwrapped = prev.kakoune-unwrapped.overrideAttrs (o: rec {
2020-01-04 05:06:31 +00:00
version = "2019.12.10";
src = prev.fetchFromGitHub {
2020-01-04 05:06:31 +00:00
repo = "kakoune";
owner = "mawww";
rev = "v${version}";
hash = "sha256-TnRQ73bIQGavXNp+wrKtYHgGem+R6JDWt333z2izYzE=";
};
});
2019-12-15 07:03:57 +00:00
};
2020-01-04 05:06:31 +00:00
in [ kak ];
2019-12-15 07:03:57 +00:00
}