feat: full refactoring - work in progress...

This commit is contained in:
Xavier Morel
2025-07-23 16:49:52 +02:00
parent 66f7edf9a3
commit 85fdab6375
38 changed files with 726 additions and 774 deletions

View File

@@ -0,0 +1,10 @@
{
...
}:
{
imports = [
./helix.nix
./kitty.nix
./nvim.nix
];
}

View File

View File

@@ -0,0 +1,41 @@
{
lib,
config,
...
}:
{
options.myHome.programs.helix.enable = lib.mkEnableOption "enables helix";
config = lib.mkIf config.myHome.programs.helix.enable {
programs.helix = {
enable = true;
defaultEditor = true;
settings = {
editor = {
lsp = {
enable = true;
display-messages = true;
display-inlay-hints = true;
};
# [editor.inline-diagnostics]
# cursor-line = "warning"
};
# [[language]]
# name = "python"
# language-servers = ["pylsp"]
# [language-server.pylsp.config.pylsp]
# plugins.pyls_mypy.enabled = true
# plugins.pyls_mypy.live_mode = true
# [[language]]
# name = "rust"
# language-servers = ["rust-analyzer"]
# [language-server.rust-analyzer.config]
# check.command = "clippy"
};
};
};
}

View File

@@ -0,0 +1,34 @@
{
lib,
config,
...
}:
{
options.myHome.programs.kitty.enable = lib.mkEnableOption "enables kitty";
config = lib.mkIf config.myHome.programs.kitty.enable {
programs.kitty = lib.mkForce {
enable = true;
keybindings = {
"ctrl+left" = "previous_tab";
"ctrl+right" = "next_tab";
"ctrl+down" = "new_tab";
};
settings = {
confirm_os_window_close = 0;
dynamic_background_opacity = true;
enable_audio_bell = false;
mouse_hide_wait = "-1.0";
background_opacity = "0.5";
background_blur = 5;
font_family = "Fira Code";
};
extraConfig = ''
tab_bar_style fade
tab_fade 1
active_tab_font_style bold
inactive_tab_font_style bold
'';
};
};
}

View File

@@ -0,0 +1,29 @@
{
lib,
config,
pkgs,
...
}:
{
options.myHome.programs.nvim.enable = lib.mkEnableOption "enables neovim";
config = lib.mkIf config.myHome.programs.nvim.enable {
home.packages = with pkgs; [
lua
lua52Packages.luarocks
ghostscript
tectonic
mermaid-cli
lazygit
];
programs.neovim = {
enable = true;
vimAlias = true;
viAlias = true;
};
home.file.".config/nvim" = {
source = ../../../dotfiles/nvim;
recursive = true;
};
};
}