2023-08-12 18:34:29 +02:00
|
|
|
{ pkgs, helix, ... }:
|
2023-04-22 14:15:53 +02:00
|
|
|
{
|
|
|
|
home.packages = with pkgs; [
|
2023-05-14 12:39:19 +02:00
|
|
|
gdb
|
2023-04-22 14:15:53 +02:00
|
|
|
lldb
|
|
|
|
rust-analyzer
|
2023-05-15 22:59:59 +02:00
|
|
|
rnix-lsp
|
2023-04-22 14:15:53 +02:00
|
|
|
(python3.withPackages (ps: with ps; [
|
|
|
|
pyls-isort
|
|
|
|
pylsp-mypy
|
|
|
|
python-lsp-black
|
|
|
|
python-lsp-server
|
|
|
|
|
|
|
|
# pylsp optional dependencies
|
|
|
|
types-requests
|
|
|
|
flake8
|
|
|
|
mccabe
|
|
|
|
pycodestyle
|
|
|
|
pydocstyle
|
|
|
|
pyflakes
|
|
|
|
pylint
|
|
|
|
]))
|
|
|
|
clang-tools
|
|
|
|
];
|
|
|
|
programs.helix = {
|
|
|
|
enable = true;
|
2023-08-12 18:34:29 +02:00
|
|
|
# pull helix from the flake to fix random coredumps
|
|
|
|
package = helix.packages.x86_64-linux.default;
|
2023-05-21 01:25:33 +02:00
|
|
|
languages = {
|
2023-08-12 18:34:29 +02:00
|
|
|
language-server.rnix-lsp = {
|
|
|
|
command = "rnix-lsp";
|
|
|
|
};
|
2023-05-21 01:25:33 +02:00
|
|
|
language = [
|
|
|
|
{
|
|
|
|
name = "nix";
|
|
|
|
auto-format = true;
|
2023-08-12 18:34:29 +02:00
|
|
|
language-servers = [ "rnix-lsp" ];
|
2023-05-21 01:25:33 +02:00
|
|
|
}
|
|
|
|
];
|
|
|
|
};
|
2023-04-22 14:15:53 +02:00
|
|
|
settings = {
|
2023-06-19 23:58:04 +02:00
|
|
|
theme = "dracula";
|
2023-04-22 14:15:53 +02:00
|
|
|
editor = {
|
|
|
|
line-number = "relative";
|
|
|
|
cursor-shape.insert = "bar";
|
|
|
|
lsp = {
|
|
|
|
display-messages = true;
|
|
|
|
display-inlay-hints = true;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
}
|