style: use alejandra formatter on all nix files

This commit is contained in:
Yorick Barbanneau 2025-09-25 23:33:01 +02:00
parent d563805909
commit 0d8a394dcf
Signed by: ephase
GPG key ID: 246042E52B41FFCF
76 changed files with 1287 additions and 935 deletions

View file

@ -1,9 +1,11 @@
{ lib, config, ... }:
with lib;
let
cfg = config.modules.cli.direnv;
in
{
lib,
config,
...
}:
with lib; let
cfg = config.modules.cli.direnv;
in {
options.modules.cli.direnv = {
enable = mkEnableOption "enable direnv";
};
@ -12,7 +14,7 @@ in
programs.direnv = {
enable = true;
enableZshIntegration = true;
nix-direnv.enable = true;
nix-direnv.enable = true;
};
};
}

View file

@ -1,9 +1,12 @@
{ lib, config, pkgs, ... }:
with lib;
let
cfg = config.modules.cli.ghq;
in
{
lib,
config,
pkgs,
...
}:
with lib; let
cfg = config.modules.cli.ghq;
in {
options.modules.cli.ghq = {
enable = mkEnableOption "enable ghq";
};
@ -18,7 +21,7 @@ in
root = "~/code";
};
};
home.shellAliases = {
# thanks jdauliac for the tip
g = "cd $(${pkgs.ghq}/bin/ghq root)/$(${pkgs.ghq}/bin/ghq list | ${pkgs.fzf}/bin/fzf)";

View file

@ -1,9 +1,13 @@
{ lib, config, pkgs, inputs, ... }:
with lib;
let
cfg = config.modules.cli.git;
in
{
lib,
config,
pkgs,
inputs,
...
}:
with lib; let
cfg = config.modules.cli.git;
in {
options.modules.cli.git = {
enable = mkEnableOption "enable git";
@ -40,7 +44,6 @@ in
dark = true;
line-numbers = true;
syntax-theme = "base16-256";
};
};
package = pkgs.gitFull;

View file

@ -1,9 +1,12 @@
{ lib, config, pkgs, ... }:
with lib;
let
cfg = config.modules.cli.k8s;
in
{
lib,
config,
pkgs,
...
}:
with lib; let
cfg = config.modules.cli.k8s;
in {
options.modules.cli.k8s = {
enable = mkEnableOption "Install k8s utils";
@ -15,10 +18,12 @@ in
};
config = mkIf cfg.enable {
home.packages = with pkgs; [
kubectl
kubecm
] ++ cfg.kubectlPlugins;
home.packages = with pkgs;
[
kubectl
kubecm
]
++ cfg.kubectlPlugins;
programs.k9s = {
enable = true;
};

View file

@ -1,6 +1,10 @@
{ lib, pkgs, config, ... }:
with lib;
let
{
lib,
pkgs,
config,
...
}:
with lib; let
cfg = config.modules.cli.neovim;
nvim-spell-fr-utf8-dictionary = builtins.fetchurl {
url = "https://ftp.nluug.nl/vim/runtime/spell/fr.utf-8.spl";
@ -14,15 +18,15 @@ let
## Dynamically create LSP servers configurations list regarding
## files in `./files/lsp`
lspConfigFiles = lib.mapAttrs' (
k: _: lib.nameValuePair
("${config.xdg.configHome}/nvim/lsp/${k}")
({ source = ./files/lsp/${k};})
) (builtins.readDir ./files/lsp);
k: _:
lib.nameValuePair
"${config.xdg.configHome}/nvim/lsp/${k}"
{source = ./files/lsp/${k};}
) (builtins.readDir ./files/lsp);
## This variable contains neovim LSP activations
lspLuaConfig = lib.attrsets.mapAttrsToList (
k: v:
"vim.lsp.enable('${lib.removeSuffix ".lua" k}')"
k: v: "vim.lsp.enable('${lib.removeSuffix ".lua" k}')"
) (builtins.readDir ./files/lsp);
## Tony plugins to have a proper helm linting.
@ -35,16 +39,17 @@ let
ref = "main";
};
};
in
{
in {
options.modules.cli.neovim = {
enable = mkEnableOption "enable Neovim text editor";
};
config = mkIf cfg.enable {
home.file = lspConfigFiles // {
"${config.xdg.configHome}/nvim/spell/fr.utf-8.spl".source = nvim-spell-fr-utf8-dictionary;
"${config.xdg.configHome}/nvim/spell/fr.utf-8.sug".source = nvim-spell-fr-utf8-suggestions;
};
home.file =
lspConfigFiles
// {
"${config.xdg.configHome}/nvim/spell/fr.utf-8.spl".source = nvim-spell-fr-utf8-dictionary;
"${config.xdg.configHome}/nvim/spell/fr.utf-8.sug".source = nvim-spell-fr-utf8-suggestions;
};
programs.neovim = {
enable = true;
@ -79,9 +84,8 @@ in
(builtins.readFile ./files/options.lua)
+ (builtins.readFile ./files/keybindings.lua)
+ ''
${ lib.concatStringsSep "\n" lspLuaConfig}
''
;
${lib.concatStringsSep "\n" lspLuaConfig}
'';
plugins = with pkgs.vimPlugins; [
{
plugin = nvim-autopairs;
@ -93,39 +97,39 @@ in
{
plugin = catppuccin-nvim;
type = "lua";
config = (builtins.readFile ./files/plugins/theme.lua);
config = builtins.readFile ./files/plugins/theme.lua;
}
{
plugin = blink-cmp;
type = "lua";
config = (builtins.readFile ./files/plugins/blink-cmp.lua);
config = builtins.readFile ./files/plugins/blink-cmp.lua;
}
blink-emoji-nvim
blink-cmp-dictionary
{
plugin = conform-nvim;
type = "lua";
config = (builtins.readFile ./files/plugins/conform.lua);
config = builtins.readFile ./files/plugins/conform.lua;
}
{
plugin = dropbar-nvim;
type = "lua";
config = (builtins.readFile ./files/plugins/dropbar.lua);
config = builtins.readFile ./files/plugins/dropbar.lua;
}
{
plugin = fzf-lua;
type = "lua";
config = (builtins.readFile ./files/plugins/fzf-lua.lua);
config = builtins.readFile ./files/plugins/fzf-lua.lua;
}
{
plugin = gitsigns-nvim;
type = "lua";
config = (builtins.readFile ./files/plugins/gitsign.lua);
config = builtins.readFile ./files/plugins/gitsign.lua;
}
{
plugin = indent-blankline-nvim;
type = "lua";
config =''
config = ''
require("ibl").setup{
indent = { char = ""},
}
@ -134,34 +138,35 @@ in
{
plugin = lualine-nvim;
type = "lua";
config = (builtins.readFile ./files/plugins/lualine.lua);
config = builtins.readFile ./files/plugins/lualine.lua;
}
{
plugin = neo-tree-nvim;
type = "lua";
config = (builtins.readFile ./files/plugins/neotree.lua);
plugin = neo-tree-nvim;
type = "lua";
config = builtins.readFile ./files/plugins/neotree.lua;
}
nui-nvim
{
plugin = nvim-web-devicons;
type = "lua";
config=''
config = ''
require('nvim-web-devicons').setup {}
'';
}
{
plugin = nvim-lint;
type = "lua";
config = ( builtins.readFile ./files/plugins/nvim-lint.lua);
config = (builtins.readFile ./files/plugins/nvim-lint.lua);
}
{
plugin = nvim-sops;
type = "lua";
config = (builtins.readFile ./files/plugins/nvim-sops.lua);
config = builtins.readFile ./files/plugins/nvim-sops.lua;
}
plenary-nvim
{
plugin = (nvim-treesitter.withPlugins (p: [
plugin = (
nvim-treesitter.withPlugins (p: [
p.bash
p.c
p.cpp
@ -187,23 +192,22 @@ in
])
);
type = "lua";
config = ( builtins.readFile ./files/plugins/treesitter.lua);
config = (builtins.readFile ./files/plugins/treesitter.lua);
}
{
plugin = nvim-treesitter-context;
type = "lua";
config = ( builtins.readFile ./files/plugins/treesitter_context.lua);
config = (builtins.readFile ./files/plugins/treesitter_context.lua);
}
{
plugin = which-key-nvim;
type = "lua";
config = ( builtins.readFile ./files/plugins/whichkey.lua );
config = (builtins.readFile ./files/plugins/whichkey.lua);
}
{
plugin = nvim-k8s-lsp ;
plugin = nvim-k8s-lsp;
type = "lua";
config = ( builtins.readFile ./files/plugins/nvim-k8s-lsp.lua );
config = (builtins.readFile ./files/plugins/nvim-k8s-lsp.lua);
}
{
plugin = helm-ls-nvim;

View file

@ -1,9 +1,11 @@
{ lib, config, ... }:
with lib;
let
cfg = config.modules.cli.starship;
in
{
lib,
config,
...
}:
with lib; let
cfg = config.modules.cli.starship;
in {
options.modules.cli.starship = {
enable = mkEnableOption "enable starship prompt";
};

View file

@ -1,10 +1,13 @@
{ lib, config, pkgs, inputs, ... }:
with lib;
let
cfg = config.modules.cli.tmux;
in
{
lib,
config,
pkgs,
inputs,
...
}:
with lib; let
cfg = config.modules.cli.tmux;
in {
options.modules.cli.tmux = {
enable = mkEnableOption "enable Tmux";
extraConfig = mkOption {
@ -29,63 +32,64 @@ in
mouse = true;
prefix = "C-a";
terminal = "tmux-256color";
extraConfig = ''
set -g detach-on-destroy off
set -g display-time 1500
extraConfig =
''
set -g detach-on-destroy off
set -g display-time 1500
bind -n -N "Select pane to the left of the active pane" M-h select-pane -L
bind -n -N "Select pane below the active pane" M-j select-pane -D
bind -n -N "Select pane above the active pane" M-k select-pane -U
bind -n -N "Select pane to the right of the active pane" M-l select-pane -R
bind -n -N "Select pane to the left of the active pane" M-h select-pane -L
bind -n -N "Select pane below the active pane" M-j select-pane -D
bind -n -N "Select pane above the active pane" M-k select-pane -U
bind -n -N "Select pane to the right of the active pane" M-l select-pane -R
bind -n -r -N "Resize the pane left by 5" M-H resize-pane -L 5
bind -n -r -N "Resize the pane down by 5" M-J resize-pane -D 5
bind -n -r -N "Resize the pane up by 5" M-K resize-pane -U 5
bind -n -r -N "Resize the pane right by 5" M-L resize-pane -R 5
bind -n M-n split-window -h -c "#{pane_current_path}"
bind -n M-N split-window -v -c "#{pane_current_path}"
bind -n -r -N "Resize the pane left by 5" M-H resize-pane -L 5
bind -n -r -N "Resize the pane down by 5" M-J resize-pane -D 5
bind -n -r -N "Resize the pane up by 5" M-K resize-pane -U 5
bind -n -r -N "Resize the pane right by 5" M-L resize-pane -R 5
bind -n M-n split-window -h -c "#{pane_current_path}"
bind -n M-N split-window -v -c "#{pane_current_path}"
# define sessions with Alt+F{1..4} for general purpose sessions
bind -n M-F1 if 'tmux has-session -t 1' {switch-client -t 1} {display-popup -E -E 'create-tmux-session -i 1'}
bind -n M-F2 if 'tmux has-session -t 2' {switch-client -t 2} {display-popup -E -E 'create-tmux-session -i 2'}
bind -n M-F3 if 'tmux has-session -t 3' {switch-client -t 3} {display-popup -E -E 'create-tmux-session -i 3'}
bind -n M-F4 if 'tmux has-session -t 4' {switch-client -t 4} {display-popup -E -E 'create-tmux-session -i 4'}
# define sessions with Alt+F{1..4} for general purpose sessions
bind -n M-F1 if 'tmux has-session -t 1' {switch-client -t 1} {display-popup -E -E 'create-tmux-session -i 1'}
bind -n M-F2 if 'tmux has-session -t 2' {switch-client -t 2} {display-popup -E -E 'create-tmux-session -i 2'}
bind -n M-F3 if 'tmux has-session -t 3' {switch-client -t 3} {display-popup -E -E 'create-tmux-session -i 3'}
bind -n M-F4 if 'tmux has-session -t 4' {switch-client -t 4} {display-popup -E -E 'create-tmux-session -i 4'}
# change window with Alt+{1..5}
bind -n -N "Goto window 1" M-1 select-window -T -t 1
bind -n -N "Goto window 2" M-2 select-window -T -t 2
bind -n -N "Goto window 3" M-3 select-window -T -t 3
bind -n -N "Goto window 4" M-4 select-window -T -t 4
bind -n -N "Goto window 5" M-5 select-window -T -t 5
# change window with Alt+{1..5}
bind -n -N "Goto window 1" M-1 select-window -T -t 1
bind -n -N "Goto window 2" M-2 select-window -T -t 2
bind -n -N "Goto window 3" M-3 select-window -T -t 3
bind -n -N "Goto window 4" M-4 select-window -T -t 4
bind -n -N "Goto window 5" M-5 select-window -T -t 5
# Theme
set -g status-interval 2
setw -g automatic-rename on # rename window to reflect current program
set -g renumber-windows on # renumber windows when a window is closed
set -g set-titles on
set -g mode-style bg=colour18,fg=colour7
set -g set-titles-string "#T"
set -g status-bg colour0
set -g status-fg colour7
set -g message-style bg=colour19,fg=colour7
# Theme
set -g status-interval 2
setw -g automatic-rename on # rename window to reflect current program
set -g renumber-windows on # renumber windows when a window is closed
set -g set-titles on
set -g mode-style bg=colour18,fg=colour7
set -g set-titles-string "#T"
set -g status-bg colour0
set -g status-fg colour7
set -g message-style bg=colour19,fg=colour7
setw -g window-status-current-format '#[fg=colour18,bg=colour11] #I\
#[bg=colour19,fg=colour7,bold] #W\
#{?window_active,󰎂 ,}#{?window_marked_flag,󰃃 ,}#{?window_activity_flag, ,}#{?window_silence_flag,󰝟 ,}#{?window_zoomed_flag,󱀅 ,}'
setw -g window-status-current-format '#[fg=colour18,bg=colour11] #I\
#[bg=colour19,fg=colour7,bold] #W\
#{?window_active,󰎂 ,}#{?window_marked_flag,󰃃 ,}#{?window_activity_flag, ,}#{?window_silence_flag,󰝟 ,}#{?window_zoomed_flag,󱀅 ,}'
set -g pane-border-style fg=colour19
set -g pane-active-border-style fg=colour4
set -g pane-border-style fg=colour19
set -g pane-active-border-style fg=colour4
setw -g window-status-format '#[bg=color12,fg=colour19] #I\
#[bg=colour18,fg=colour7,dim] #W\
#{?window_last_flag, ,}#{?window_marked_flag,󰃃 ,}#{?window_activity_flag, ,}#{?window_silence_flag,󰝟 ,}#{?window_zoomed_flag,󱀅 ,}#{?window_bell_flag,#[bg=colour1]#[fg=colour15]#[none] ,}'
setw -g window-status-bell-style bg=colour18,fg=colour7
set -g status-left-length 100
set -g status-left '#[bg=colour0, fg=colour6]  #S '
set -g status-right ' '
''
+ inputs.nix-private.tmux.nix
+ cfg.extraConfig;
setw -g window-status-format '#[bg=color12,fg=colour19] #I\
#[bg=colour18,fg=colour7,dim] #W\
#{?window_last_flag, ,}#{?window_marked_flag,󰃃 ,}#{?window_activity_flag, ,}#{?window_silence_flag,󰝟 ,}#{?window_zoomed_flag,󱀅 ,}#{?window_bell_flag,#[bg=colour1]#[fg=colour15]#[none] ,}'
setw -g window-status-bell-style bg=colour18,fg=colour7
set -g status-left-length 100
set -g status-left '#[bg=colour0, fg=colour6]  #S '
set -g status-right ' '
''
+ inputs.nix-private.tmux.nix
+ cfg.extraConfig;
plugins = with pkgs; [
tmuxPlugins.tmux-fzf
];

View file

@ -1,14 +1,16 @@
{ lib, config, pkgs, ... }:
with lib;
let
cfg = config.modules.cli.utils;
in
{
lib,
config,
pkgs,
...
}:
with lib; let
cfg = config.modules.cli.utils;
in {
options.modules.cli.utils = {
enable = mkEnableOption "Install cli utils";
};
config = mkIf cfg.enable {
programs.bat = {
enable = true;
config = {
@ -21,7 +23,6 @@ in
};
programs.fd = {
enable = true;
};
programs.fzf = {
enable = true;

View file

@ -1,16 +1,19 @@
{ lib, config, pkgs, ... }:
with lib;
let
cfg = config.modules.cli.vifm;
in
{
lib,
config,
pkgs,
...
}:
with lib; let
cfg = config.modules.cli.vifm;
in {
options.modules.cli.vifm = {
enable = mkEnableOption "enable Vifm file browser";
};
config = mkIf cfg.enable {
home.packages = with pkgs; [
vifm
chafa # Preview images
chafa # Preview images
poppler_utils # Preview PDF file
];
programs.zsh = {

View file

@ -1,9 +1,11 @@
{ lib, config, ... }:
with lib;
let
cfg = config.modules.cli.zellij;
in
{
lib,
config,
...
}:
with lib; let
cfg = config.modules.cli.zellij;
in {
options.modules.cli.zellij = {
enable = mkEnableOption "enable Zellij";
};

View file

@ -1,9 +1,12 @@
{ lib, config, pkgs, ... }:
with lib;
let
cfg = config.modules.cli.zsh;
in
{
lib,
config,
pkgs,
...
}:
with lib; let
cfg = config.modules.cli.zsh;
in {
options.modules.cli.zsh = {
enable = mkEnableOption "enable Zsh configuration";
};
@ -17,7 +20,7 @@ in
ignoreAllDups = true;
save = 10000;
share = true;
path = "${config.xdg.dataHome }/zsh/history";
path = "${config.xdg.dataHome}/zsh/history";
};
historySubstringSearch = {
enable = true;
@ -26,7 +29,7 @@ in
};
syntaxHighlighting = {
enable = true;
highlighters = [ "brackets" "main" "pattern" ];
highlighters = ["brackets" "main" "pattern"];
styles = {
arithmetic-expansion = "fg=#ba8baf";
assign = "fg=#7cafc2";
@ -98,15 +101,16 @@ in
compinit -C
'';
plugins = [
{
name = "base16-shell";
src = pkgs.fetchFromGitHub {
owner = "chriskempson";
repo = "base16-shell";
rev = "588691ba71b47e75793ed9edfcfaa058326a6f41";
hash = "sha256-X89FsG9QICDw3jZvOCB/KsPBVOLUeE7xN3VCtf0DD3E=";
{
name = "base16-shell";
src = pkgs.fetchFromGitHub {
owner = "chriskempson";
repo = "base16-shell";
rev = "588691ba71b47e75793ed9edfcfaa058326a6f41";
hash = "sha256-X89FsG9QICDw3jZvOCB/KsPBVOLUeE7xN3VCtf0DD3E=";
};
}];
}
];
localVariables = {
BASE16_THEME = "${config.xdg.configHome}/zsh/plugins/base16";
# Make ESC key more reactive to go to normal mode