vinheim: helix editor

This commit is contained in:
L-Nafaryus 2025-01-13 17:04:56 +05:00
parent de55921ea8
commit 8efb191b62
Signed by: L-Nafaryus
GPG Key ID: 553C97999B363D38
2 changed files with 144 additions and 2 deletions

View File

@ -70,6 +70,10 @@
settings.KbdInteractiveAuthentication = false;
};
services.printing = {
enable = true;
};
programs.ssh.extraConfig = ''
Host catarina
HostName 77.242.105.50
@ -82,6 +86,7 @@
podman = {
enable = true;
dockerCompat = true;
dockerSocket.enable = true;
defaultNetwork.settings.dns_enabled = true;
};
libvirtd.enable = true;

View File

@ -17,7 +17,7 @@ in {
group = "users";
uid = 1000;
initialPassword = "nixos";
shell = pkgs.fish;
shell = pkgs.nushell;
};
home-manager.useGlobalPkgs = true;
@ -71,6 +71,7 @@ in {
kdePackages.kmail
kdePackages.kmail-account-wizard
kdePackages.krdc
lazydocker
docker-compose
@ -78,6 +79,13 @@ in {
dive
ksshaskpass
dbeaver-bin
bluez
wl-clipboard
cliphist
];
xdg.portal = {
@ -98,7 +106,136 @@ in {
accent = "green";
};
programs.helix = {
enable = true;
settings = {
theme = "gruvbox";
editor.cursor-shape = {
normal = "block";
insert = "bar";
select = "underline";
};
};
extraPackages = with pkgs; [pyright ruff alejandra];
languages = {
language = [
{
name = "nix";
auto-format = true;
formatter.command = "alejandra";
}
{
name = "python";
language-id = "python";
roots = ["pyproject.toml" "setup.py" "poetry.lock" "uv.lock" "pdm.lock"];
language-servers = ["ruff" "pyright"];
auto-format = true;
formatter = {
command = "ruff";
args = ["format" "-"];
};
file-types = ["py"];
comment-token = "#";
shebangs = ["python"];
}
];
language-server = {
pyright = {
command = "pyright-langserver";
args = ["--stdio"];
config.python.analysis = {
venvPath = ".";
venv = ".venv";
lint = true;
inlayHint.enable = true;
autoSearchPaths = true;
diagnosticMode = "workspace";
useLibraryCodeForType = true;
logLevel = "Error";
typeCheckingMode = "off";
autoImoprtCompletion = true;
reportOptionalSubscript = false;
reportOptionalMemberAccess = false;
};
};
ruff = {
command = "ruff";
args = ["server"];
environment = {RUFF_TRACE = "messages";};
};
};
};
};
programs = {
nushell = {
enable = true;
# The config.nu can be anywhere you want if you like to edit your Nushell with Nu
#configFile.source = ./.../config.nu;
# for editing directly to config.nu
extraConfig = ''
let carapace_completer = {|spans|
carapace $spans.0 nushell $spans | from json
}
$env.config = {
show_banner: false,
completions: {
case_sensitive: false # case-sensitive completions
quick: true # set to false to prevent auto-selecting completions
partial: true # set to false to prevent partial filling of the prompt
algorithm: "fuzzy"
external: {
enable: true
max_results: 100
completer: $carapace_completer
}
}
}
'';
};
carapace = {
enable = true;
enableNushellIntegration = true;
enableBashIntegration = true;
};
starship = {
enable = true;
enableNushellIntegration = true;
enableBashIntegration = true;
settings = {
add_newline = true;
format = ''
$all $fill $time
$character
'';
fill = {
symbol = " ";
};
line_break = {
disabled = true;
};
directory = {
truncate_to_repo = false;
};
time = {
disabled = false;
use_12hr = true;
};
character = {
success_symbol = "[](bold green)";
error_symbol = "[](bold red)";
};
nix_shell = {
symbol = " ";
heuristic = true;
};
};
};
# General
fish = {
enable = true;
@ -266,5 +403,5 @@ in {
package = pkgs.wireshark;
};
fonts.packages = with pkgs; [nerdfonts liberation_ttf];
fonts.packages = with pkgs; [nerd-fonts.jetbrains-mono liberation_ttf];
}