editors.neovim: Add AI assistant
All checks were successful
check / check (push) Successful in 36s

This commit is contained in:
Florian RICHER 2025-06-26 15:09:48 +02:00
parent 06e73b03d0
commit c8b083ec48
5 changed files with 85 additions and 25 deletions

5
.sops.yaml Normal file
View file

@ -0,0 +1,5 @@
creation_rules:
- path_regex: secrets/[^/]+\.(yaml|json|env|ini|txt)$
key_groups:
- pgp:
- "B19E3F4A2D806AB4793FDF2FC73D37CBED7BFC77"

21
flake.lock generated
View file

@ -900,6 +900,7 @@
"nixpkgs": "nixpkgs",
"nur": "nur",
"nvf": "nvf",
"sops-nix": "sops-nix",
"systems": "systems_3"
}
},
@ -977,6 +978,26 @@
"type": "github"
}
},
"sops-nix": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1750119275,
"narHash": "sha256-Rr7Pooz9zQbhdVxux16h7URa6mA80Pb/G07T4lHvh0M=",
"owner": "Mic92",
"repo": "sops-nix",
"rev": "77c423a03b9b2b79709ea2cb63336312e78b72e2",
"type": "github"
},
"original": {
"owner": "Mic92",
"repo": "sops-nix",
"type": "github"
}
},
"systems": {
"locked": {
"lastModified": 1681028828,

View file

@ -71,6 +71,11 @@
inputs.nixpkgs.follows = "nixpkgs";
inputs.home-manager.follows = "home-manager";
};
sops-nix = {
url = "github:Mic92/sops-nix";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = inputs @ {
@ -111,7 +116,7 @@
lanzaboote.nixosModules.lanzaboote
disko.nixosModules.disko
chaotic.nixosModules.default
{ nixpkgs.overlays = overlays; }
{nixpkgs.overlays = overlays;}
{
home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true;
@ -128,8 +133,9 @@
customHomeManagerConfiguration = {
name,
system
}: home-manager.lib.homeManagerConfiguration rec {
system,
}:
home-manager.lib.homeManagerConfiguration rec {
pkgs = import nixpkgs {
inherit overlays system;
};
@ -137,7 +143,7 @@
modules =
home-modules
++ [
{ nix.package = pkgs.nix; }
{nix.package = pkgs.nix;}
./hosts/${name}/home.nix
];
@ -171,8 +177,14 @@
#####################################################################
#####################################################################
homeConfigurations = {
perso-home = customHomeManagerConfiguration { name = "perso-home"; system = "x86_64-linux"; };
pro-home = customHomeManagerConfiguration { name = "pro-home"; system = "x86_64-linux"; };
perso-home = customHomeManagerConfiguration {
name = "perso-home";
system = "x86_64-linux";
};
pro-home = customHomeManagerConfiguration {
name = "pro-home";
system = "x86_64-linux";
};
};
}
#####################################################################
@ -188,6 +200,7 @@
default = pkgs.mkShell {
packages = with pkgs; [
nixd
sops
];
};
};

View file

@ -191,7 +191,7 @@ in {
};
notes = {
obsidian.enable = true;
obsidian.enable = false;
neorg.enable = false;
orgmode.enable = false;
mind-nvim.enable = true;
@ -228,13 +228,26 @@ in {
fastaction.enable = true;
};
# assistant = {
# chatgpt.enable = false;
# copilot = {
# enable = false;
# cmp.enable = true;
# };
# };
assistant = {
avante-nvim = {
enable = true;
setupOpts = {
auto_suggestions_provider = "mistral_devstral";
provider = "mistral_devstral";
providers = {
mistral_devstral = {
__inherited_from = "openai";
api_key_name = "MISTRAL_API_KEY";
endpoint = "https://api.mistral.ai/v1/";
model = "devstral-small-latest";
extra_request_body = {
max_tokens = 32768;
};
};
};
};
};
};
session = {
nvim-session-manager.enable = false;

8
secrets/ai.env Normal file
View file

@ -0,0 +1,8 @@
MISTRAL_API_KEY=ENC[AES256_GCM,data:CfMdet8epmcrNyFrOCvDehBWzTWOZfydxMpNDYBaLpEvQw==,iv:cu25Q4+5x6ewYxQsM0hr+AbX2m7vjpmwwEpIE50BnL8=,tag:t6KojwxjeIW33NlREKDGfA==,type:str]
sops_lastmodified=2025-06-26T13:08:18Z
sops_mac=ENC[AES256_GCM,data:jN4nkUKnEDDzeeFa7zAlBJIDQgYun6nTocwyaVdUZ0vICVHkOS4tEPn5/zAMC69WOMSmgR9S2segXzpapssOTbw48aH4W9xOBTr9gdNUpurOaq7nwvzoo8v0kUUjycC+iVnQOmOKcIe0chZTjrMMeEH0D/BNUcBIwxRQI60wNyI=,iv:t/hmzGHTpLRrx3PW08uggNc23jwdh9fw71RHJq6feHM=,tag:YIyspCSDIuqpvlZYEBsk7Q==,type:str]
sops_pgp__list_0__map_created_at=2025-06-26T13:07:43Z
sops_pgp__list_0__map_enc=-----BEGIN PGP MESSAGE-----\n\nhQIMA1Ns3cJaRR/oARAA8ALWOQ4qRmVY6BdrIOpRFI3Dws8F6Nq/6vWo3P4opnic\n3h2oobvWSxLaijPQrDHeN11mS3O4oIUdj69TPJuHzcbFV8PeI0OE64pm660VmlOr\nXdJ36w3aSxe1tK+pa281hhcAGn8TmGwi1EhYuzwXGQz/Pu2EHIqEfWtEVZMifs3J\npqvxvsJySvLo2jiedJLp3h0Uj92j5u33SxgfgjAQxYiwA2WXUzOOVKERYc90LRDQ\nOOKZq1/X1s3CWOzP03zR1seHl0Xnz+R+gbV7F/1s6DFyFkmAgBaE2rJfeVrxfeMx\nGo9y/9FOvsHzw9VGPyZfRoTyph4+WZNtvyyGtnKutm7eZ/N6MTavwNza/UkFEv09\nHbORrG3cdbcBvY1M62LOk8nfgr5qCeEOHN4jsd+9Wt9P/896B8ixsCSo7M/h74ml\nn2VEEKY9PhXyejzd9zwDpet/BhMGOH9NEmgrm/N9pVuIh3LoHdOxK86bJYXK6Xz/\nNH3IW0pZBJZIcGhsXxQ/w9CO4M1S3we0stHo7rVo8Gp6L9mx13+xWc31BZsvac+4\nE3evNc3Id6Tr8N6Rhd+mS0EmwYAPCw8BBWrEpk8V/6ghjNtx8iEvchk+lFeYeRa3\nV55CGmeAZpiiSekB8mXhK5CPtRh52vDnHpXv5yyTZYqKFVYk9u2GL5DIm0KVPTTS\nVgF3TfyikcacCnEdbJKSn/V+r5qWUXXbbtNGxawQcXafUNSbyvgrU0my3lrqhnGp\nJhYkSUB0ManRofRcmVqGcEs/whnV4LaX5d7ql8tKWP/7iYVBBm1T\n=TGKA\n-----END PGP MESSAGE-----
sops_pgp__list_0__map_fp=B19E3F4A2D806AB4793FDF2FC73D37CBED7BFC77
sops_unencrypted_suffix=_unencrypted
sops_version=3.10.2