Compare commits

...

4 commits

5 changed files with 78 additions and 71 deletions

76
flake.lock generated
View file

@ -22,12 +22,15 @@
}
},
"flake-utils": {
"inputs": {
"systems": "systems"
},
"locked": {
"lastModified": 1659877975,
"narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=",
"lastModified": 1731533236,
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0",
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
"type": "github"
},
"original": {
@ -43,11 +46,11 @@
]
},
"locked": {
"lastModified": 1748955489,
"narHash": "sha256-OmZXyW2g5qIuo5Te74McwR0TwauCO2sF3/SjGDVuxyg=",
"lastModified": 1755810213,
"narHash": "sha256-QdenO8f0PTg+tC6HuSvngKcbRZA5oZKmjUT+MXKOLQg=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "bb846c031be68a96466b683be32704ef6e07b159",
"rev": "6911d3e7f475f7b3558b4f5a6aba90fa86099baa",
"type": "github"
},
"original": {
@ -61,10 +64,10 @@
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1755552883,
"narHash": "sha256-wdVtGyN8JkpByIiNwSevZMBy02vWwCPNaD/caCQJ6aM=",
"lastModified": 1755761639,
"narHash": "sha256-rEvyLY/3u1RfxsySyqScM3peGUVNJNmGApHVyIY7Cx0=",
"ref": "main",
"rev": "1ccd39ac6de09a7a73a9a36ec1c34f70cb5edfe2",
"rev": "d73f46baaff8c9fff2a7b11c97413ea3fb171584",
"shallow": true,
"type": "git",
"url": "ssh://git@git.epha.se:24422/ephase/nix-private.git"
@ -84,11 +87,11 @@
]
},
"locked": {
"lastModified": 1713543440,
"narHash": "sha256-lnzZQYG0+EXl/6NkGpyIz+FEOc/DSEG57AP1VsdeNrM=",
"lastModified": 1752054764,
"narHash": "sha256-Ob/HuUhANoDs+nvYqyTKrkcPXf4ZgXoqMTQoCK0RFgQ=",
"owner": "nix-community",
"repo": "nixGL",
"rev": "310f8e49a149e4c9ea52f1adf70cdc768ec53f8a",
"rev": "a8e1ce7d49a149ed70df676785b07f63288f53c5",
"type": "github"
},
"original": {
@ -113,11 +116,11 @@
},
"nixpkgs_2": {
"locked": {
"lastModified": 1748693115,
"narHash": "sha256-StSrWhklmDuXT93yc3GrTlb0cKSS0agTAxMGjLKAsY8=",
"lastModified": 1755615617,
"narHash": "sha256-HMwfAJBdrr8wXAkbGhtcby1zGFvs+StOp19xNsbqdOg=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "910796cabe436259a29a72e8d3f5e180fc6dfacc",
"rev": "20075955deac2583bb12f07151c2df830ef346b4",
"type": "github"
},
"original": {
@ -128,11 +131,11 @@
},
"nixpkgs_3": {
"locked": {
"lastModified": 1748693115,
"narHash": "sha256-StSrWhklmDuXT93yc3GrTlb0cKSS0agTAxMGjLKAsY8=",
"lastModified": 1755615617,
"narHash": "sha256-HMwfAJBdrr8wXAkbGhtcby1zGFvs+StOp19xNsbqdOg=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "910796cabe436259a29a72e8d3f5e180fc6dfacc",
"rev": "20075955deac2583bb12f07151c2df830ef346b4",
"type": "github"
},
"original": {
@ -145,15 +148,14 @@
"nur": {
"inputs": {
"flake-parts": "flake-parts",
"nixpkgs": "nixpkgs_3",
"treefmt-nix": "treefmt-nix"
"nixpkgs": "nixpkgs_3"
},
"locked": {
"lastModified": 1748973087,
"narHash": "sha256-ZN0XKKdCBC9eLeog7qYhfGPbajkPtQPdlxp/dhwONw4=",
"lastModified": 1755877557,
"narHash": "sha256-AjUqNCIgjQKfhvH+HUXZQLlSDiRTFQPSPN8Ws/O7mVQ=",
"owner": "nix-community",
"repo": "NUR",
"rev": "90add46380908ba4395f5f1dfec84224a3b0d4b9",
"rev": "332abf45be8133422a97e134b35782400ffc65bd",
"type": "github"
},
"original": {
@ -179,11 +181,11 @@
]
},
"locked": {
"lastModified": 1747603214,
"narHash": "sha256-lAblXm0VwifYCJ/ILPXJwlz0qNY07DDYdLD+9H+Wc8o=",
"lastModified": 1754988908,
"narHash": "sha256-t+voe2961vCgrzPFtZxha0/kmFSHFobzF00sT8p9h0U=",
"owner": "Mic92",
"repo": "sops-nix",
"rev": "8d215e1c981be3aa37e47aeabd4e61bb069548fd",
"rev": "3223c7a92724b5d804e9988c6b447a0d09017d48",
"type": "github"
},
"original": {
@ -192,24 +194,18 @@
"type": "github"
}
},
"treefmt-nix": {
"inputs": {
"nixpkgs": [
"nur",
"nixpkgs"
]
},
"systems": {
"locked": {
"lastModified": 1733222881,
"narHash": "sha256-JIPcz1PrpXUCbaccEnrcUS8jjEb/1vJbZz5KkobyFdM=",
"owner": "numtide",
"repo": "treefmt-nix",
"rev": "49717b5af6f80172275d47a418c9719a31a78b53",
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "treefmt-nix",
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
}

View file

@ -10,12 +10,28 @@ let
url = "https://ftp.nluug.nl/vim/runtime/spell/fr.utf-8.sug";
sha256 = "0294bc32b42c90bbb286a89e23ca3773b7ef50eff1ab523b1513d6a25c6b3f58";
};
## 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);
## This variable contains neovim LSP activations
lspLuaConfig = lib.attrsets.mapAttrsToList (
k: v:
"vim.lsp.enable('${lib.removeSuffix ".lua" k}')"
) (builtins.readDir ./files/lsp);
## Tony plugins to chave a proper helm linting.
nvim-k8s-lsp = pkgs.vimUtils.buildVimPlugin {
pname = "nvim-k8s-lsp";
version = "main";
src = builtins.fetchGit {
url = "https://github.com/tonychg/nvim-k8s-lsp.git";
rev = "395f6d6b91da55c12b26a2ef1ace7a922a756712";
rev = "930aa20bcd54f2d6f16040e98ff4068b292c6c7f";
ref = "main";
};
};
@ -25,18 +41,10 @@ in
enable = mkEnableOption "enable Neovim text editor";
};
config = mkIf cfg.enable {
home.file."${config.xdg.configHome}/nvim/spell/fr.utf-8.spl".source = nvim-spell-fr-utf8-dictionary;
home.file."${config.xdg.configHome}/nvim/spell/fr.utf-8.sug".source = nvim-spell-fr-utf8-suggestions;
home.file."${config.xdg.configHome}/nvim/lsp/bash.lua".source = ./files/lsp/bash.lua;
home.file."${config.xdg.configHome}/nvim/lsp/go.lua".source = ./files/lsp/go.lua;
home.file."${config.xdg.configHome}/nvim/lsp/helm.lua".source = ./files/lsp/helm.lua;
home.file."${config.xdg.configHome}/nvim/lsp/lua.lua".source = ./files/lsp/lua.lua;
home.file."${config.xdg.configHome}/nvim/lsp/nills.lua".source = ./files/lsp/nills.lua;
home.file."${config.xdg.configHome}/nvim/lsp/pylsp.lua".source = ./files/lsp/pylsp.lua;
home.file."${config.xdg.configHome}/nvim/lsp/terraformls.lua".source = ./files/lsp/terraformls.lua;
home.file."${config.xdg.configHome}/nvim/lsp/tflint.lua".source = ./files/lsp/tflint.lua;
home.file."${config.xdg.configHome}/nvim/lsp/yaml.lua".source = ./files/lsp/yaml.lua;
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;
@ -70,7 +78,9 @@ in
extraLuaConfig =
(builtins.readFile ./files/options.lua)
+ (builtins.readFile ./files/keybindings.lua)
+ (builtins.readFile ./files/lsp.lua)
+ ''
${ lib.concatStringsSep "\n" lspLuaConfig}
''
;
plugins = with pkgs.vimPlugins; [
{

View file

@ -1,10 +0,0 @@
-- LSP configuration
vim.lsp.enable('bash')
vim.lsp.enable('go')
vim.lsp.enable('helm')
vim.lsp.enable('lua')
vim.lsp.enable('nills')
vim.lsp.enable('pylsp')
vim.lsp.enable('terraformls')
vim.lsp.enable('tflint')
vim.lsp.enable('yaml')

View file

@ -10,14 +10,14 @@ in
config = mkIf cfg.enable {
programs.zsh = {
enable = true;
dotDir = ".config/zsh";
dotDir = "${config.xdg.configHome}/zsh";
defaultKeymap = "viins";
enableCompletion = true;
history = {
ignoreAllDups = true;
save = 10000;
share = true;
path = "$HOME/.local/share/zsh/history";
path = "${config.xdg.dataHome }/zsh/history";
};
historySubstringSearch = {
enable = true;
@ -108,7 +108,7 @@ in
};
}];
localVariables = {
BASE16_THEME = "$HOME/.config/zsh/plugins/base16";
BASE16_THEME = "${config.xdg.configHome}/zsh/plugins/base16";
# Make ESC key more reactive to go to normal mode
KEYTIMEOUT = 1;
};

View file

@ -1,10 +1,21 @@
{ inputs, pkgs, ...}:
{
nixpkgs.overlays = [
(final: prev: {
qutebrowser = prev.qutebrowser.override {
enableWideVine = if pkgs.system == "x86_64-linux" then true else false;
};
(final: prev: {
qutebrowser = prev.qutebrowser.override {
enableWideVine = if pkgs.system == "x86_64-linux" then true else false;
# Get Widevine friom slackware as google CDN seems to not working anymore
# TODO: Remove this when resolved upstream
# https://github.com/NixOS/nixpkgs/issues/435671
widevine-cdm = pkgs.widevine-cdm.overrideAttrs (oldAttrs: {
src = pkgs.fetchzip {
url = "https://alien.slackbook.org/slackbuilds/chromium-widevine-plugin/build/4.10.2891.0-linux-x64.zip" ;
hash = "sha256-ZO6FmqJUnB9VEJ7caJt58ym8eB3/fDATri3iOWCULRI";
stripRoot = false;
};
});
};
})
inputs.nur.overlays.default
];