fix full-deps

This commit is contained in:
iofq 2023-05-24 15:10:06 -05:00
parent 6e5ab46a79
commit 0c5b3d23ae
2 changed files with 17 additions and 14 deletions

2
.gitignore vendored Normal file
View file

@ -0,0 +1,2 @@
*.AppImage
squashfs_root

View file

@ -6,6 +6,18 @@
}; };
outputs = inputs @ {self, nixpkgs, flake-utils, ...}: outputs = inputs @ {self, nixpkgs, flake-utils, ...}:
flake-utils.lib.eachDefaultSystem (system: let flake-utils.lib.eachDefaultSystem (system: let
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;
pkgs = import nixpkgs { pkgs = import nixpkgs {
inherit system; inherit system;
}; };
@ -23,28 +35,17 @@
ripgrep ripgrep
]; ];
full-dependancies = with pkgs; [ full-dependancies = with pkgs; [
go
gopls gopls
] ++ dependancies; ];
neovim-with-deps = recursiveMerge [ neovim-with-deps = recursiveMerge [
pkgs.neovim-unwrapped pkgs.neovim-unwrapped
{ buildInputs = dependancies; } { buildInputs = dependancies; }
]; ];
neovim-with-full-deps = recursiveMerge [ neovim-with-full-deps = recursiveMerge [
pkgs.neovim-unwrapped pkgs.neovim-unwrapped
{ buildInputs = dependancies; } { buildInputs = dependancies ++ full-dependancies; }
]; ];
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;
in rec { in rec {
packages.full = pkgs.wrapNeovim neovim-with-full-deps (base // { packages.full = pkgs.wrapNeovim neovim-with-full-deps (base // {
configure = { configure = {