summary refs log tree commit diff
diff options
context:
space:
mode:
authorMel <einebeere@gmail.com>2024-10-30 00:12:31 +0100
committerMel <einebeere@gmail.com>2024-10-30 00:12:31 +0100
commit424559ba8cc03a1015c7bbe9baa459fab6694094 (patch)
tree434603f7841814f35520d72211b761b0def0b1db
parent1eb3a3a6f03d15f16674c273a62caf019e7b11bc (diff)
downloadminerals-424559ba8cc03a1015c7bbe9baa459fab6694094.tar.zst
minerals-424559ba8cc03a1015c7bbe9baa459fab6694094.zip
Fix vimPlugins.YouCompleteMe Go completion support
(See: https://github.com/NixOS/nixpkgs/pull/352222)

Signed-off-by: Mel <einebeere@gmail.com>
-rw-r--r--modules/common.nix1
-rw-r--r--modules/vim.nix5
-rw-r--r--pkgs/default.nix2
-rw-r--r--pkgs/youcompleteme.nix32
4 files changed, 36 insertions, 4 deletions
diff --git a/modules/common.nix b/modules/common.nix
index 209a385..3b3b6ec 100644
--- a/modules/common.nix
+++ b/modules/common.nix
@@ -76,7 +76,6 @@
     go gopls delve go-task
     meson cmake
     nil nixfmt-rfc-style direnv
-    ycmd
     helix
 
     wineWowPackages.stagingFull winetricks bottles
diff --git a/modules/vim.nix b/modules/vim.nix
index 4fe62fe..ceceac5 100644
--- a/modules/vim.nix
+++ b/modules/vim.nix
@@ -1,4 +1,4 @@
-{ pkgs, ... }:
+{ pkgs, auxiliaryPkgs, ... }:
 
 let
   configs = [
@@ -18,13 +18,12 @@ let
 
         packages.collection = with vimPlugins; {
           start = [
-            YouCompleteMe
             fzf-vim
             vim-easymotion
             vim-sleuth
             vim-better-whitespace
             vim-tmux-navigator
-          ];
+          ] ++ (with auxiliaryPkgs; [ youcompleteme ]);
 
           opt = [ ];
         };
diff --git a/pkgs/default.nix b/pkgs/default.nix
index 9b8c990..ec2599a 100644
--- a/pkgs/default.nix
+++ b/pkgs/default.nix
@@ -17,4 +17,6 @@ rec {
   ngfx = pkgs.callPackage ./ngfx.nix {};
   
   retroarch = pkgs.callPackage ./retroarch.nix {};
+
+  youcompleteme = pkgs.callPackage ./youcompleteme.nix {};
 }
diff --git a/pkgs/youcompleteme.nix b/pkgs/youcompleteme.nix
new file mode 100644
index 0000000..190e4b5
--- /dev/null
+++ b/pkgs/youcompleteme.nix
@@ -0,0 +1,32 @@
+{
+  ycmd,
+  vimPlugins,
+  gopls,
+  ...
+}:
+
+let
+  ycmd-go = ycmd.overrideAttrs (
+    final: prev: {
+      pname = prev.pname + "-go";
+
+      installPhase =
+        prev.installPhase
+        + ''
+          TARGET=$out/lib/ycmd/third_party/go/bin
+          mkdir -p $TARGET
+          ln -sf ${gopls}/bin/gopls $TARGET
+        '';
+    }
+  );
+in
+vimPlugins.YouCompleteMe.overrideAttrs (
+  final: prev: {
+    buildPhase =
+      prev.buildPhase
+      + ''
+        rm third_party/ycmd
+        ln -s ${ycmd-go}/lib/ycmd third_party
+      '';
+  }
+)