44 lines
1.2 KiB
Nix
44 lines
1.2 KiB
Nix
{
|
|
callPackage,
|
|
kakoune,
|
|
kakoune-unwrapped,
|
|
nki-kak-util ? callPackage ./util.nix { },
|
|
nki-kak-lsp ? callPackage ./lsp.nix { },
|
|
nki-kak-rc ? callPackage ./rc.nix { },
|
|
nki-kak-plugins ? callPackage ./plugins.nix { util = nki-kak-util; },
|
|
nki-kak-kaktex ? callPackage ./kaktex { },
|
|
nki-kak-themes ? callPackage ./themes.nix { },
|
|
nki-kak-faces ? callPackage ./faces.nix { util = nki-kak-util; },
|
|
...
|
|
}:
|
|
(kakoune.override {
|
|
plugins =
|
|
nki-kak-plugins
|
|
++ nki-kak-themes
|
|
++ [
|
|
nki-kak-kaktex
|
|
nki-kak-faces
|
|
nki-kak-rc
|
|
nki-kak-lsp.plugin
|
|
];
|
|
}).overrideAttrs
|
|
(attrs: {
|
|
buildCommand = ''
|
|
${attrs.buildCommand or ""}
|
|
# location of kak binary is used to find ../share/kak/autoload,
|
|
# unless explicitly overriden with KAKOUNE_RUNTIME
|
|
rm "$out/bin/kak"
|
|
makeWrapper "${kakoune-unwrapped}/bin/kak" "$out/bin/kak" \
|
|
--set KAKOUNE_RUNTIME "$out/share/kak" \
|
|
--suffix PATH ":" "${nki-kak-lsp.extraPaths}"
|
|
'';
|
|
|
|
passthru = {
|
|
lsp = nki-kak-lsp;
|
|
rc = nki-kak-rc;
|
|
plugins = nki-kak-plugins;
|
|
kaktex = nki-kak-kaktex;
|
|
themes = nki-kak-themes;
|
|
faces = nki-kak-faces;
|
|
};
|
|
})
|