Format with nixfmt
This commit is contained in:
parent
72dac789ef
commit
1b819937f7
41
flake.nix
41
flake.nix
|
@ -7,34 +7,23 @@
|
||||||
nixd-nightly.url = "github:nix-community/nixd";
|
nixd-nightly.url = "github:nix-community/nixd";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = inputs @ {
|
outputs = inputs@{ self, flake-parts, ... }:
|
||||||
self,
|
flake-parts.lib.mkFlake { inherit inputs; } {
|
||||||
flake-parts,
|
flake = { lib = import ./lib { inherit inputs; }; };
|
||||||
...
|
|
||||||
}:
|
|
||||||
flake-parts.lib.mkFlake {inherit inputs;} {
|
|
||||||
flake = {
|
|
||||||
lib = import ./lib {inherit inputs;};
|
|
||||||
};
|
|
||||||
|
|
||||||
systems = ["x86_64-linux"];
|
systems = [ "x86_64-linux" ];
|
||||||
|
|
||||||
perSystem = {
|
perSystem = { pkgs, self', system, ... }:
|
||||||
pkgs,
|
let
|
||||||
self',
|
default = self.lib.mkVimPlugin { inherit system; };
|
||||||
system,
|
neovim = self.lib.mkNeovim { inherit system; };
|
||||||
...
|
in {
|
||||||
}: let
|
devShells.default =
|
||||||
default = self.lib.mkVimPlugin {inherit system;};
|
pkgs.mkShell { nativeBuildInputs = [ pkgs.just pkgs.nixfmt ]; };
|
||||||
neovim = self.lib.mkNeovim {inherit system;};
|
|
||||||
in {
|
packages = { inherit default neovim; };
|
||||||
devShells.default = pkgs.mkShell {
|
|
||||||
nativeBuildInputs = [pkgs.just];
|
formatter = pkgs.nixfmt;
|
||||||
};
|
};
|
||||||
|
|
||||||
packages = {inherit default neovim;};
|
|
||||||
|
|
||||||
formatter = pkgs.alejandra;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
491
lib/default.nix
491
lib/default.nix
|
@ -1,13 +1,13 @@
|
||||||
{inputs}: let
|
{ inputs }:
|
||||||
inherit (inputs.nixpkgs) legacyPackages;
|
let inherit (inputs.nixpkgs) legacyPackages;
|
||||||
in rec {
|
in rec {
|
||||||
mkVimPlugin = {system}: let
|
mkVimPlugin = { system }:
|
||||||
inherit (pkgs) vimUtils;
|
let
|
||||||
inherit (vimUtils) buildVimPlugin;
|
inherit (pkgs) vimUtils;
|
||||||
|
inherit (vimUtils) buildVimPlugin;
|
||||||
|
|
||||||
pkgs = legacyPackages.${system};
|
pkgs = legacyPackages.${system};
|
||||||
in
|
in buildVimPlugin {
|
||||||
buildVimPlugin {
|
|
||||||
name = "opdavies";
|
name = "opdavies";
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
rm -rf $out/.envrc
|
rm -rf $out/.envrc
|
||||||
|
@ -24,148 +24,148 @@ in rec {
|
||||||
src = ../.;
|
src = ../.;
|
||||||
};
|
};
|
||||||
|
|
||||||
mkNeovimPlugins = {system}: let
|
mkNeovimPlugins = { system }:
|
||||||
inherit (pkgs) php82Packages vimPlugins;
|
let
|
||||||
inherit (pkgs.vimUtils) buildVimPlugin;
|
inherit (pkgs) php82Packages vimPlugins;
|
||||||
|
inherit (pkgs.vimUtils) buildVimPlugin;
|
||||||
|
|
||||||
pkgs = import inputs.nixpkgs {
|
pkgs = import inputs.nixpkgs {
|
||||||
inherit system;
|
inherit system;
|
||||||
|
|
||||||
config.allowUnfree = true;
|
config.allowUnfree = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
pkgs2305 = inputs.nixpkgs-2305.legacyPackages.${system};
|
pkgs2305 = inputs.nixpkgs-2305.legacyPackages.${system};
|
||||||
|
|
||||||
customVim = {
|
customVim = {
|
||||||
nvim-tmux-navigation = buildVimPlugin {
|
nvim-tmux-navigation = buildVimPlugin {
|
||||||
name = "nvim-tmux-navigation";
|
name = "nvim-tmux-navigation";
|
||||||
src = pkgs.fetchFromGitHub {
|
src = pkgs.fetchFromGitHub {
|
||||||
owner = "alexghergh";
|
owner = "alexghergh";
|
||||||
repo = "nvim-tmux-navigation";
|
repo = "nvim-tmux-navigation";
|
||||||
rev = "4898c98702954439233fdaf764c39636681e2861";
|
rev = "4898c98702954439233fdaf764c39636681e2861";
|
||||||
sha256 = "CxAgQSbOrg/SsQXupwCv8cyZXIB7tkWO+Y6FDtoR8xk=";
|
sha256 = "CxAgQSbOrg/SsQXupwCv8cyZXIB7tkWO+Y6FDtoR8xk=";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
tabline-vim = buildVimPlugin {
|
||||||
|
name = "tabline-vim";
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "mkitt";
|
||||||
|
repo = "tabline.vim";
|
||||||
|
rev = "69c9698a3240860adaba93615f44778a9ab724b4";
|
||||||
|
sha256 = "51b8PxyKqBdeIvmmZyF2hpMBjkyrlZDdTB1opr5JZ7Y=";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vim-caser = buildVimPlugin {
|
||||||
|
name = "vim-caser";
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "arthurxavierx";
|
||||||
|
repo = "vim-caser";
|
||||||
|
rev = "6bc9f41d170711c58e0157d882a5fe8c30f34bf6";
|
||||||
|
sha256 = "PXAY01O/cHvAdWx3V/pyWFeiV5qJGvLcAKhl5DQc0Ps=";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vim-heritage = buildVimPlugin {
|
||||||
|
name = "vim-heritage";
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "jessarcher";
|
||||||
|
repo = "vim-heritage";
|
||||||
|
rev = "cffa05c78c0991c998adc4504d761b3068547db6";
|
||||||
|
sha256 = "Lebe5V1XFxn4kSZ+ImZ69Vst9Nbc0N7eA9IzOCijFS0=";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vim-textobj-xmlattr = buildVimPlugin {
|
||||||
|
name = "vim-textobj-xmlattr";
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "whatyouhide";
|
||||||
|
repo = "vim-textobj-xmlattr";
|
||||||
|
rev = "694a297f1d75fd527e87da9769f3c6519a87ebb1";
|
||||||
|
sha256 = "+91FVP95oh00flINdltqx6qJuijYo56tHIh3J098G2Q=";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
vim-zoom = buildVimPlugin {
|
||||||
|
name = "vim-zoom";
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "dhruvasagar";
|
||||||
|
repo = "vim-zoom";
|
||||||
|
rev = "01c737005312c09e0449d6518decf8cedfee32c7";
|
||||||
|
sha256 = "/ADzScsG0u6RJbEtfO23Gup2NYdhPkExqqOPVcQa7aQ=";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
tabline-vim = buildVimPlugin {
|
opdavies-nvim = mkVimPlugin { inherit system; };
|
||||||
name = "tabline-vim";
|
in [
|
||||||
src = pkgs.fetchFromGitHub {
|
customVim.nvim-tmux-navigation
|
||||||
owner = "mkitt";
|
customVim.tabline-vim
|
||||||
repo = "tabline.vim";
|
customVim.vim-caser
|
||||||
rev = "69c9698a3240860adaba93615f44778a9ab724b4";
|
customVim.vim-heritage
|
||||||
sha256 = "51b8PxyKqBdeIvmmZyF2hpMBjkyrlZDdTB1opr5JZ7Y=";
|
customVim.vim-textobj-xmlattr
|
||||||
};
|
customVim.vim-zoom
|
||||||
};
|
|
||||||
|
|
||||||
vim-caser = buildVimPlugin {
|
vimPlugins.comment-nvim
|
||||||
name = "vim-caser";
|
vimPlugins.dial-nvim
|
||||||
src = pkgs.fetchFromGitHub {
|
vimPlugins.fidget-nvim
|
||||||
owner = "arthurxavierx";
|
vimPlugins.gitsigns-nvim
|
||||||
repo = "vim-caser";
|
vimPlugins.harpoon
|
||||||
rev = "6bc9f41d170711c58e0157d882a5fe8c30f34bf6";
|
vimPlugins.impatient-nvim
|
||||||
sha256 = "PXAY01O/cHvAdWx3V/pyWFeiV5qJGvLcAKhl5DQc0Ps=";
|
vimPlugins.mini-nvim
|
||||||
};
|
vimPlugins.neodev-nvim
|
||||||
};
|
vimPlugins.nvim-web-devicons
|
||||||
|
vimPlugins.refactoring-nvim
|
||||||
|
vimPlugins.rest-nvim
|
||||||
|
vimPlugins.undotree
|
||||||
|
vimPlugins.vim-eunuch
|
||||||
|
vimPlugins.vim-highlightedyank
|
||||||
|
vimPlugins.vim-just
|
||||||
|
vimPlugins.vim-nix
|
||||||
|
vimPlugins.nvim-spectre
|
||||||
|
vimPlugins.vim-obsession
|
||||||
|
vimPlugins.vim-pasta
|
||||||
|
vimPlugins.vim-polyglot
|
||||||
|
vimPlugins.vim-repeat
|
||||||
|
vimPlugins.vim-sleuth
|
||||||
|
vimPlugins.vim-terraform
|
||||||
|
vimPlugins.vim-textobj-user
|
||||||
|
vimPlugins.vim-unimpaired
|
||||||
|
|
||||||
vim-heritage = buildVimPlugin {
|
# {
|
||||||
name = "vim-heritage";
|
# plugin = vimPlugins.vim-sort-motion;
|
||||||
src = pkgs.fetchFromGitHub {
|
# type = "lua";
|
||||||
owner = "jessarcher";
|
# config = ''
|
||||||
repo = "vim-heritage";
|
# vim.g.sort_motion_flags = "ui"
|
||||||
rev = "cffa05c78c0991c998adc4504d761b3068547db6";
|
# '';
|
||||||
sha256 = "Lebe5V1XFxn4kSZ+ImZ69Vst9Nbc0N7eA9IzOCijFS0=";
|
# }
|
||||||
};
|
# {
|
||||||
};
|
# plugin = vimPlugins.treesj;
|
||||||
|
# type = "lua";
|
||||||
|
# config = ''
|
||||||
|
# require "treesj".setup {}
|
||||||
|
# '';
|
||||||
|
# }
|
||||||
|
vimPlugins.vim-sort-motion
|
||||||
|
vimPlugins.treesj
|
||||||
|
|
||||||
vim-textobj-xmlattr = buildVimPlugin {
|
# Testing
|
||||||
name = "vim-textobj-xmlattr";
|
vimPlugins.vim-test
|
||||||
src = pkgs.fetchFromGitHub {
|
|
||||||
owner = "whatyouhide";
|
|
||||||
repo = "vim-textobj-xmlattr";
|
|
||||||
rev = "694a297f1d75fd527e87da9769f3c6519a87ebb1";
|
|
||||||
sha256 = "+91FVP95oh00flINdltqx6qJuijYo56tHIh3J098G2Q=";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
vim-zoom = buildVimPlugin {
|
# Git
|
||||||
name = "vim-zoom";
|
vimPlugins.committia-vim
|
||||||
src = pkgs.fetchFromGitHub {
|
vimPlugins.diffview-nvim
|
||||||
owner = "dhruvasagar";
|
vimPlugins.vim-fugitive
|
||||||
repo = "vim-zoom";
|
|
||||||
rev = "01c737005312c09e0449d6518decf8cedfee32c7";
|
|
||||||
sha256 = "/ADzScsG0u6RJbEtfO23Gup2NYdhPkExqqOPVcQa7aQ=";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
opdavies-nvim = mkVimPlugin {inherit system;};
|
# Debugging
|
||||||
in [
|
vimPlugins.nvim-dap
|
||||||
customVim.nvim-tmux-navigation
|
vimPlugins.nvim-dap-ui
|
||||||
customVim.tabline-vim
|
vimPlugins.nvim-dap-virtual-text
|
||||||
customVim.vim-caser
|
|
||||||
customVim.vim-heritage
|
|
||||||
customVim.vim-textobj-xmlattr
|
|
||||||
customVim.vim-zoom
|
|
||||||
|
|
||||||
vimPlugins.comment-nvim
|
# Treesitter
|
||||||
vimPlugins.dial-nvim
|
(vimPlugins.nvim-treesitter.withPlugins (p: [
|
||||||
vimPlugins.fidget-nvim
|
|
||||||
vimPlugins.gitsigns-nvim
|
|
||||||
vimPlugins.harpoon
|
|
||||||
vimPlugins.impatient-nvim
|
|
||||||
vimPlugins.mini-nvim
|
|
||||||
vimPlugins.neodev-nvim
|
|
||||||
vimPlugins.nvim-web-devicons
|
|
||||||
vimPlugins.refactoring-nvim
|
|
||||||
vimPlugins.rest-nvim
|
|
||||||
vimPlugins.undotree
|
|
||||||
vimPlugins.vim-eunuch
|
|
||||||
vimPlugins.vim-highlightedyank
|
|
||||||
vimPlugins.vim-just
|
|
||||||
vimPlugins.vim-nix
|
|
||||||
vimPlugins.nvim-spectre
|
|
||||||
vimPlugins.vim-obsession
|
|
||||||
vimPlugins.vim-pasta
|
|
||||||
vimPlugins.vim-polyglot
|
|
||||||
vimPlugins.vim-repeat
|
|
||||||
vimPlugins.vim-sleuth
|
|
||||||
vimPlugins.vim-terraform
|
|
||||||
vimPlugins.vim-textobj-user
|
|
||||||
vimPlugins.vim-unimpaired
|
|
||||||
|
|
||||||
# {
|
|
||||||
# plugin = vimPlugins.vim-sort-motion;
|
|
||||||
# type = "lua";
|
|
||||||
# config = ''
|
|
||||||
# vim.g.sort_motion_flags = "ui"
|
|
||||||
# '';
|
|
||||||
# }
|
|
||||||
# {
|
|
||||||
# plugin = vimPlugins.treesj;
|
|
||||||
# type = "lua";
|
|
||||||
# config = ''
|
|
||||||
# require "treesj".setup {}
|
|
||||||
# '';
|
|
||||||
# }
|
|
||||||
vimPlugins.vim-sort-motion
|
|
||||||
vimPlugins.treesj
|
|
||||||
|
|
||||||
# Testing
|
|
||||||
vimPlugins.vim-test
|
|
||||||
|
|
||||||
# Git
|
|
||||||
vimPlugins.committia-vim
|
|
||||||
vimPlugins.diffview-nvim
|
|
||||||
vimPlugins.vim-fugitive
|
|
||||||
|
|
||||||
# Debugging
|
|
||||||
vimPlugins.nvim-dap
|
|
||||||
vimPlugins.nvim-dap-ui
|
|
||||||
vimPlugins.nvim-dap-virtual-text
|
|
||||||
|
|
||||||
# Treesitter
|
|
||||||
(vimPlugins.nvim-treesitter.withPlugins
|
|
||||||
(p: [
|
|
||||||
p.bash
|
p.bash
|
||||||
p.comment
|
p.comment
|
||||||
p.css
|
p.css
|
||||||
|
@ -199,111 +199,112 @@ in rec {
|
||||||
p.xml
|
p.xml
|
||||||
p.yaml
|
p.yaml
|
||||||
]))
|
]))
|
||||||
vimPlugins.nvim-treesitter-context
|
vimPlugins.nvim-treesitter-context
|
||||||
vimPlugins.nvim-treesitter-textobjects
|
vimPlugins.nvim-treesitter-textobjects
|
||||||
|
|
||||||
# LSP, linting and formatting
|
# LSP, linting and formatting
|
||||||
vimPlugins.conform-nvim
|
vimPlugins.conform-nvim
|
||||||
vimPlugins.lsp-status-nvim
|
vimPlugins.lsp-status-nvim
|
||||||
vimPlugins.nvim-lint
|
vimPlugins.nvim-lint
|
||||||
vimPlugins.nvim-lspconfig
|
vimPlugins.nvim-lspconfig
|
||||||
|
|
||||||
# Completion
|
# Completion
|
||||||
pkgs2305.vimPlugins.phpactor
|
pkgs2305.vimPlugins.phpactor
|
||||||
vimPlugins.cmp-buffer
|
vimPlugins.cmp-buffer
|
||||||
vimPlugins.cmp-cmdline
|
vimPlugins.cmp-cmdline
|
||||||
vimPlugins.cmp-nvim-lsp
|
vimPlugins.cmp-nvim-lsp
|
||||||
vimPlugins.cmp-path
|
vimPlugins.cmp-path
|
||||||
vimPlugins.cmp-treesitter
|
vimPlugins.cmp-treesitter
|
||||||
vimPlugins.cmp_luasnip
|
vimPlugins.cmp_luasnip
|
||||||
vimPlugins.lspkind-nvim
|
vimPlugins.lspkind-nvim
|
||||||
vimPlugins.nvim-cmp
|
vimPlugins.nvim-cmp
|
||||||
|
|
||||||
# Snippets
|
# Snippets
|
||||||
vimPlugins.friendly-snippets
|
vimPlugins.friendly-snippets
|
||||||
vimPlugins.luasnip
|
vimPlugins.luasnip
|
||||||
|
|
||||||
# Telescope
|
# Telescope
|
||||||
vimPlugins.plenary-nvim
|
vimPlugins.plenary-nvim
|
||||||
vimPlugins.popup-nvim
|
vimPlugins.popup-nvim
|
||||||
vimPlugins.telescope-file-browser-nvim
|
vimPlugins.telescope-file-browser-nvim
|
||||||
vimPlugins.telescope-frecency-nvim
|
vimPlugins.telescope-frecency-nvim
|
||||||
vimPlugins.telescope-fzf-native-nvim
|
vimPlugins.telescope-fzf-native-nvim
|
||||||
vimPlugins.telescope-live-grep-args-nvim
|
vimPlugins.telescope-live-grep-args-nvim
|
||||||
vimPlugins.telescope-nvim
|
vimPlugins.telescope-nvim
|
||||||
vimPlugins.telescope-ui-select-nvim
|
vimPlugins.telescope-ui-select-nvim
|
||||||
|
|
||||||
# Databases
|
# Databases
|
||||||
vimPlugins.vim-dadbod
|
vimPlugins.vim-dadbod
|
||||||
vimPlugins.vim-dadbod-ui
|
vimPlugins.vim-dadbod-ui
|
||||||
vimPlugins.vim-dadbod-completion
|
vimPlugins.vim-dadbod-completion
|
||||||
|
|
||||||
vimPlugins.markdown-preview-nvim
|
vimPlugins.markdown-preview-nvim
|
||||||
|
|
||||||
# # Markdown
|
# # Markdown
|
||||||
# {
|
# {
|
||||||
# plugin = vimPlugins.markdown-preview-nvim;
|
# plugin = vimPlugins.markdown-preview-nvim;
|
||||||
# type = "lua";
|
# type = "lua";
|
||||||
# config = ''
|
# config = ''
|
||||||
# vim.g.mkdp_refresh_slow = 1
|
# vim.g.mkdp_refresh_slow = 1
|
||||||
# '';
|
# '';
|
||||||
# }
|
# }
|
||||||
|
|
||||||
# Themes
|
# Themes
|
||||||
vimPlugins.catppuccin-nvim
|
vimPlugins.catppuccin-nvim
|
||||||
|
|
||||||
# Configuration.
|
# Configuration.
|
||||||
opdavies-nvim
|
opdavies-nvim
|
||||||
];
|
];
|
||||||
|
|
||||||
mkExtraPackages = {system}: let
|
mkExtraPackages = { system }:
|
||||||
inherit (inputs) nixd-nightly;
|
let
|
||||||
inherit (pkgs) nodePackages lua54Packages php82Packages;
|
inherit (inputs) nixd-nightly;
|
||||||
|
inherit (pkgs) nodePackages lua54Packages php82Packages;
|
||||||
|
|
||||||
pkgs = import inputs.nixpkgs {
|
pkgs = import inputs.nixpkgs {
|
||||||
inherit system;
|
inherit system;
|
||||||
|
|
||||||
config.allowUnfree = true;
|
config.allowUnfree = true;
|
||||||
};
|
};
|
||||||
in [
|
in [
|
||||||
# Languages
|
# Languages
|
||||||
nodePackages.typescript
|
nodePackages.typescript
|
||||||
pkgs.php81
|
pkgs.php81
|
||||||
|
|
||||||
# Language servers
|
# Language servers
|
||||||
lua54Packages.luacheck
|
lua54Packages.luacheck
|
||||||
nixd-nightly.packages.${system}.nixd
|
nixd-nightly.packages.${system}.nixd
|
||||||
nodePackages."@tailwindcss/language-server"
|
nodePackages."@tailwindcss/language-server"
|
||||||
nodePackages.bash-language-server
|
nodePackages.bash-language-server
|
||||||
nodePackages.dockerfile-language-server-nodejs
|
nodePackages.dockerfile-language-server-nodejs
|
||||||
nodePackages.intelephense
|
nodePackages.intelephense
|
||||||
nodePackages.typescript-language-server
|
nodePackages.typescript-language-server
|
||||||
nodePackages.vls
|
nodePackages.vls
|
||||||
nodePackages.volar
|
nodePackages.volar
|
||||||
nodePackages.vscode-langservers-extracted
|
nodePackages.vscode-langservers-extracted
|
||||||
nodePackages.vue-language-server
|
nodePackages.vue-language-server
|
||||||
nodePackages.yaml-language-server
|
nodePackages.yaml-language-server
|
||||||
pkgs.gopls
|
pkgs.gopls
|
||||||
pkgs.lua-language-server
|
pkgs.lua-language-server
|
||||||
pkgs.phpactor
|
pkgs.phpactor
|
||||||
pkgs.terraform-ls
|
pkgs.terraform-ls
|
||||||
|
|
||||||
# Formatters
|
# Formatters
|
||||||
pkgs.alejandra
|
pkgs.alejandra
|
||||||
pkgs.black
|
pkgs.black
|
||||||
pkgs.eslint_d
|
pkgs.eslint_d
|
||||||
pkgs.nodePackages.prettier
|
pkgs.nodePackages.prettier
|
||||||
pkgs.stylua
|
pkgs.stylua
|
||||||
|
|
||||||
# Tools
|
# Tools
|
||||||
nodePackages.jsonlint
|
nodePackages.jsonlint
|
||||||
nodePackages.markdownlint-cli
|
nodePackages.markdownlint-cli
|
||||||
php82Packages.php-codesniffer
|
php82Packages.php-codesniffer
|
||||||
php82Packages.phpstan
|
php82Packages.phpstan
|
||||||
pkgs.html-tidy
|
pkgs.html-tidy
|
||||||
pkgs.proselint
|
pkgs.proselint
|
||||||
pkgs.shellcheck
|
pkgs.shellcheck
|
||||||
];
|
];
|
||||||
|
|
||||||
mkExtraConfig = ''
|
mkExtraConfig = ''
|
||||||
lua << EOF
|
lua << EOF
|
||||||
|
@ -311,28 +312,30 @@ in rec {
|
||||||
EOF
|
EOF
|
||||||
'';
|
'';
|
||||||
|
|
||||||
mkNeovim = {system}: let
|
mkNeovim = { system }:
|
||||||
inherit (pkgs) lib neovim;
|
let
|
||||||
extraPackages = mkExtraPackages {inherit system;};
|
inherit (pkgs) lib neovim;
|
||||||
pkgs = legacyPackages.${system};
|
extraPackages = mkExtraPackages { inherit system; };
|
||||||
start = mkNeovimPlugins {inherit system;};
|
pkgs = legacyPackages.${system};
|
||||||
in
|
start = mkNeovimPlugins { inherit system; };
|
||||||
neovim.override {
|
in neovim.override {
|
||||||
configure = {
|
configure = {
|
||||||
customRC = mkExtraConfig;
|
customRC = mkExtraConfig;
|
||||||
packages.main = {inherit start;};
|
packages.main = { inherit start; };
|
||||||
};
|
};
|
||||||
|
|
||||||
extraMakeWrapperArgs = ''--suffix PATH : "${lib.makeBinPath extraPackages}"'';
|
extraMakeWrapperArgs =
|
||||||
|
''--suffix PATH : "${lib.makeBinPath extraPackages}"'';
|
||||||
};
|
};
|
||||||
|
|
||||||
mkHomeManager = {system}: let
|
mkHomeManager = { system }:
|
||||||
extraConfig = mkExtraConfig;
|
let
|
||||||
extraPackages = mkExtraPackages {inherit system;};
|
extraConfig = mkExtraConfig;
|
||||||
plugins = mkNeovimPlugins {inherit system;};
|
extraPackages = mkExtraPackages { inherit system; };
|
||||||
in {
|
plugins = mkNeovimPlugins { inherit system; };
|
||||||
inherit extraConfig extraPackages plugins;
|
in {
|
||||||
|
inherit extraConfig extraPackages plugins;
|
||||||
|
|
||||||
enable = true;
|
enable = true;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
Reference in a new issue