diff options
author | Linnnus <[email protected]> | 2023-10-27 20:16:28 +0200 |
---|---|---|
committer | Linnnus <[email protected]> | 2023-10-27 20:16:45 +0200 |
commit | 45c6864207bc1c900b6c30457c90a5d426dcdfb7 (patch) | |
tree | 19ae605721bfed10ba904314799b1661704d2ab2 | |
parent | 4a1d540524e90849d719d642926a3ace482f8be0 (diff) |
home/neovim: Move plugins into pkgs/ + add vim-crystal
-rw-r--r-- | home/neovim/filetype.nix | 28 | ||||
-rw-r--r-- | pkgs/default.nix | 9 | ||||
-rw-r--r-- | pkgs/vim-crystal/default.nix | 15 | ||||
-rw-r--r-- | pkgs/vim-janet/default.nix | 18 | ||||
-rw-r--r-- | pkgs/vim-noweb/default.nix | 12 |
5 files changed, 58 insertions, 24 deletions
diff --git a/home/neovim/filetype.nix b/home/neovim/filetype.nix index 308b848..671cecf 100644 --- a/home/neovim/filetype.nix +++ b/home/neovim/filetype.nix @@ -1,31 +1,11 @@ # This module configures various syntax/filetype plugins for Neovim. -{pkgs, ...}: let - vim-noweb = pkgs.vimUtils.buildVimPlugin { - pname = "vim-noweb"; - version = "26-08-2023"; # day of retrieval - src = pkgs.fetchzip { - url = "https://metaed.com/papers/vim-noweb/vim-noweb.tgz"; - hash = "sha256-c5eUZiKIjAfjJ33l821h5DjozMpMf0CaK03QIkSUfxg="; - }; - }; - vim-janet = pkgs.vimUtils.buildVimPlugin { - pname = "janet.vim"; - version = "02-07-2023"; # day of commit - - src = pkgs.fetchFromGitHub { - owner = "janet-lang"; - repo = "janet.vim"; - rev = "dc14b02f2820bc2aca777a1eeec48627ae6555bf"; - hash = "sha256-FbwatEyvvB4VY5fIF+HgRqFdeuEQI2ceb2MrZAL/HlA="; - }; - - nativeBuildInputs = [pkgs.janet]; - }; -in { - programs.neovim.plugins = with pkgs.vimPlugins; [ +{pkgs, ...}: { + programs.neovim.plugins = with pkgs; + with vimPlugins; [ # Filetype plugins vim-nix vim-noweb vim-janet + vim-crystal ]; } diff --git a/pkgs/default.nix b/pkgs/default.nix index d88db10..2953063 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -8,4 +8,13 @@ pkgs: { trash = pkgs.callPackage ./trash {}; mcping = pkgs.callPackage ./mcping {}; + + # TODO: These should be contained in the 'vimPlugins' attrset. This turns out + # to be non-trivial because this module is both consumed in a flake output + # context and an overlay context. + # + # See: https://nixos.wiki/wiki/Overlays#Overriding_a_package_inside_an_extensible_attribute_set + vim-crystal = pkgs.callPackage ./vim-crystal {}; + vim-noweb = pkgs.callPackage ./vim-noweb {}; + vim-janet = pkgs.callPackage ./vim-janet {}; } diff --git a/pkgs/vim-crystal/default.nix b/pkgs/vim-crystal/default.nix new file mode 100644 index 0000000..7f4e083 --- /dev/null +++ b/pkgs/vim-crystal/default.nix @@ -0,0 +1,15 @@ +{ + vimUtils, + fetchFromGitHub, +}: +vimUtils.buildVimPlugin rec { + pname = "vim-crystal"; + version = "15-04-2023"; # day of commit + + src = fetchFromGitHub { + owner = "vim-crystal"; + repo = pname; + rev = "dc21188ec8c2ee77bb81dffca02e1a29d87cfd9f"; + hash = "sha256-uGtPMgMt+s0GSQvpvo97diYOfhIf+pNuOQiGQ17I9uQ="; + }; +} diff --git a/pkgs/vim-janet/default.nix b/pkgs/vim-janet/default.nix new file mode 100644 index 0000000..a0d8db4 --- /dev/null +++ b/pkgs/vim-janet/default.nix @@ -0,0 +1,18 @@ +{ + vimUtils, + fetchFromGitHub, + janet, +}: +vimUtils.buildVimPlugin { + pname = "janet.vim"; + version = "02-07-2023"; # day of commit + + src = fetchFromGitHub { + owner = "janet-lang"; + repo = "janet.vim"; + rev = "dc14b02f2820bc2aca777a1eeec48627ae6555bf"; + hash = "sha256-FbwatEyvvB4VY5fIF+HgRqFdeuEQI2ceb2MrZAL/HlA="; + }; + + nativeBuildInputs = [janet]; +} diff --git a/pkgs/vim-noweb/default.nix b/pkgs/vim-noweb/default.nix new file mode 100644 index 0000000..365adb2 --- /dev/null +++ b/pkgs/vim-noweb/default.nix @@ -0,0 +1,12 @@ +{ + vimUtils, + fetchzip, +}: +vimUtils.buildVimPlugin { + pname = "vim-noweb"; + version = "26-08-2023"; # day of retrieval + src = fetchzip { + url = "https://metaed.com/papers/vim-noweb/vim-noweb.tgz"; + hash = "sha256-c5eUZiKIjAfjJ33l821h5DjozMpMf0CaK03QIkSUfxg="; + }; +} |