moved r-nvim to flake build

This commit is contained in:
Daniel Winkler 2026-05-13 12:30:17 +10:00
commit 1055522af9
9 changed files with 54 additions and 37 deletions

View file

@ -3,12 +3,14 @@ let
lib = nixpkgs.lib;
rOverlay = import ./r.nix {inherit inputs;};
rNvimNixOverlay = inputs.r-nvim-nix.overlays.default;
franOverlay = inputs.fran.overlays.default;
pythonOverlay = import ./python.nix inputs;
pluginsOverlay = import ./plugins.nix inputs;
dependencyOverlays = [
rOverlay
rNvimNixOverlay
pythonOverlay
pluginsOverlay
];
@ -17,6 +19,7 @@ in
{
inherit
rOverlay
rNvimNixOverlay
franOverlay
pythonOverlay
pluginsOverlay
@ -30,6 +33,7 @@ in
overlays = {
inherit
rOverlay
rNvimNixOverlay
franOverlay
pythonOverlay
pluginsOverlay

View file

@ -33,38 +33,15 @@
overlays = [inputs.fran.overlays.default];
}; # rixpkgs.legacyPackages.${prev.stdenv.hostPlatform.system};
# Pre-build nvimcom from R.nvim plugin source so R.nvim never tries to
# compile it at runtime into the read-only nix store.
nvimcom = final.stdenv.mkDerivation {
pname = "nvimcom";
version = "0.9.92";
src = inputs.plugins-r;
nativeBuildInputs = [
(rpkgs.rWrapper.override { packages = []; })
];
buildPhase = ''
mkdir -p $out/bin
R CMD INSTALL -l $out nvimcom
cd rnvimserver
$CC -pthread -O2 -Wall \
complete.c resolve.c hover.c definition.c signature.c \
rhelp.c chunk.c roxygen.c data_structures.c logging.c \
rnvimserver.c obbr.c tcp.c utilities.c ../nvimcom/src/common.c \
-o $out/bin/rnvimserver
cd ..
mkdir -p $out/nvimcom/bin
cp $out/bin/rnvimserver $out/nvimcom/bin/rnvimserver
chmod +x $out/bin/rnvimserver $out/nvimcom/bin/rnvimserver
'';
installPhase = "true";
};
# nvimcom and rnvimserver are provided by the r-nvim-nix flake overlay
# (inputs.r-nvim-nix.overlays.default)
# Standard R packages used by default in rWrapper and quarto
reqPkgs = with rpkgs.rPackages; [
# languageserver
];
in {
inherit rpkgs nvimcom;
inherit rpkgs;
baseRPackages = reqPkgs;
# R wrapper with standard packages