feat: release lazyVim 1.0.0

This commit is contained in:
2024-03-24 18:25:13 +02:00
parent 89a9730e2a
commit 2edcb2d5a7
28 changed files with 160 additions and 72 deletions

View File

@@ -1 +1 @@
result
result/

9
config/default.nix Normal file
View File

@@ -0,0 +1,9 @@
{pkgs}:
pkgs.stdenv.mkDerivation {
name = "nvim-config";
src = ./src;
installPhase = ''
mkdir -p $out/
cp -r . $out/
'';
}

View File

@@ -0,0 +1 @@
/usr/local/etc/xaked-nvim-lazygit-config.yml

View File

@@ -0,0 +1 @@
/usr/local/etc/xaked-nvim-lazygit-state.yml

View File

@@ -0,0 +1 @@
/usr/local/etc/xaked-nvim-lazy-lock.json

View File

@@ -0,0 +1 @@
/usr/local/etc/xaked-nvim-lazyvim.json

View File

@@ -29,6 +29,7 @@ require("lazy").setup({
{ import = "lazyvim.plugins.extras.ui.mini-animate" },
{ import = "plugins.tokyonight" },
{ import = "plugins.telescope" },
{ import = "plugins.lang.nix" },
{ import = "plugins.lang.shell" },
{ import = "plugins.misc.tmux-navigator" },
{ import = "plugins.undotree" },

View File

@@ -0,0 +1,41 @@
return {
{
"stevearc/conform.nvim",
optional = true,
opts = {
formatters_by_ft = {
["nix"] = { "alejandra" },
},
},
},
{
"neovim/nvim-lspconfig",
opts = {
servers = {
nixd = {},
},
},
},
{
"nvim-treesitter/nvim-treesitter",
opts = function(_, opts)
if type(opts.ensure_installed) == "table" then
vim.list_extend(opts.ensure_installed, {
"nix",
})
end
end,
},
{
"nvimtools/none-ls.nvim",
optional = true,
opts = function(_, opts)
local null_ls = require("null-ls")
opts.sources = vim.list_extend(opts.sources or {}, {
null_ls.builtins.code_actions.statix,
null_ls.builtins.diagnostics.statix,
null_ls.builtins.formatting.alejandra,
})
end,
},
}

46
flake.lock generated
View File

@@ -18,13 +18,52 @@
"type": "github"
}
},
"flake-utils_2": {
"locked": {
"lastModified": 1667395993,
"narHash": "sha256-nuEHfE/LcWyuSWnS8t12N1wc105Qtau+/OdUAjtQ0rA=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "5aed5285a952e0b949eb3ba02c12fa4fcfef535f",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"neovim": {
"inputs": {
"flake-utils": "flake-utils_2",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"dir": "contrib",
"lastModified": 1703942320,
"narHash": "sha256-CcaBqA0yFCffNPmXOJTo8c9v1jrEBiqAl8CG5Dj5YxE=",
"owner": "neovim",
"repo": "neovim",
"rev": "8744ee8783a8597f9fce4a573ae05aca2f412120",
"type": "github"
},
"original": {
"dir": "contrib",
"owner": "neovim",
"ref": "stable",
"repo": "neovim",
"type": "github"
}
},
"nixpkgs": {
"locked": {
"lastModified": 1710838473,
"narHash": "sha256-RLvwdQSENKOaLdKhNie8XqHmTXzNm00/M/THj6zplQo=",
"lastModified": 1711124224,
"narHash": "sha256-l0zlN/3CiodvWDtfBOVxeTwYSRz93muVbXWSpaMjXxM=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "fa9f817df522ac294016af3d40ccff82f5fd3a63",
"rev": "56528ee42526794d413d6f244648aaee4a7b56c0",
"type": "github"
},
"original": {
@@ -37,6 +76,7 @@
"root": {
"inputs": {
"flake-utils": "flake-utils",
"neovim": "neovim",
"nixpkgs": "nixpkgs"
}
},

View File

@@ -3,78 +3,38 @@
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixos-23.11";
flake-utils.url = "github:numtide/flake-utils";
neovim = {
url = "github:neovim/neovim/stable?dir=contrib";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = inputs @ {
self,
nixpkgs,
flake-utils,
neovim,
...
}:
flake-utils.lib.eachDefaultSystem (system: let
pkgs = import nixpkgs {
inherit system;
overlayFlakeInputs = prev: final: {
neovim = neovim.packages.${system}.neovim;
};
recursiveMerge = attrList: let
f = attrPath:
builtins.zipAttrsWith (n: values:
if pkgs.lib.tail values == []
then pkgs.lib.head values
else if pkgs.lib.all pkgs.lib.isList values
then pkgs.lib.unique (pkgs.lib.concatLists values)
else if pkgs.lib.all pkgs.lib.isAttrs values
then f (attrPath ++ [n]) values
else pkgs.lib.last values);
in
f [] attrList;
overlayLazyVim = prev: final: {
lazyVim = import ./packages/lazyVim.nix {
pkgs = final;
};
};
pkgs = import nixpkgs {
inherit system;
overlays = [overlayFlakeInputs overlayLazyVim];
};
in rec {
dependencies = with pkgs; [
ripgrep
fd
git
curl # needed to fetch titles from urls
wget
cargo
python311
python311Packages.pip
php82
php82Packages.composer
go
ruby
luarocks
nodejs
zulu #java11
fish
fzf
perl536
perl536Packages.CPAN
unzip
tree-sitter
gcc
gnumake
lazygit
];
neovim-augmented = recursiveMerge [
pkgs.neovim-unwrapped
{buildInputs = dependencies;}
];
packages.pwnvim = pkgs.wrapNeovim neovim-augmented {
viAlias = true;
vimAlias = true;
withNodeJs = false;
withPython3 = false;
withRuby = false;
extraMakeWrapperArgs = ''--prefix PATH : "${pkgs.lib.makeBinPath dependencies}" --set XDG_CONFIG_HOME "${self}"'';
};
apps.pwnvim = flake-utils.lib.mkApp {
drv = self.packages.${system}.pwnvim;
name = "pwnvim";
exePath = "/bin/nvim";
};
packages.default = packages.pwnvim;
apps.default = apps.pwnvim;
devShell = pkgs.mkShell {
buildInputs = with pkgs; [packages.pwnvim] ++ dependencies;
packages.default = pkgs.lazyVim;
apps.default = {
type = "app";
program = "${packages.default}/bin/nvim";
};
});
}

View File

@@ -1 +0,0 @@

View File

@@ -1 +0,0 @@
/tmp/state.yml

View File

@@ -1 +0,0 @@
/opt/lazy-lock.json

View File

@@ -1 +0,0 @@
/opt/lazyvim.json

12
packages/lazyVim.nix Normal file
View File

@@ -0,0 +1,12 @@
{pkgs}: let
config = import ../config {inherit pkgs;};
runtimeDeps = import ../runtimeDeps.nix {inherit pkgs;};
in
pkgs.wrapNeovim pkgs.neovim {
viAlias = true;
vimAlias = true;
withNodeJs = true;
withPython3 = true;
withRuby = false;
extraMakeWrapperArgs = ''--prefix PATH : "${pkgs.lib.makeBinPath runtimeDeps.dependencies}" --set XDG_CONFIG_HOME "${config}"'';
}

View File

@@ -1,3 +0,0 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json"
}

28
runtimeDeps.nix Normal file
View File

@@ -0,0 +1,28 @@
{pkgs}: {
dependencies = with pkgs; [
nixd # nix lsp
alejandra # nix formatter
statix # linter for nix
ripgrep
fd
git
curl # needed to fetch titles from urls
wget
cargo
php82
php82Packages.composer
go
ruby
luarocks
zulu #java11
fish
fzf
perl536
perl536Packages.CPAN
unzip
tree-sitter
gcc
gnumake
lazygit
];
}