made r packages an overlay

This commit is contained in:
Daniel Winkler 2025-05-16 17:43:53 +02:00
commit 44b39a1b9f
No known key found for this signature in database
2 changed files with 74 additions and 69 deletions

View file

@ -7,51 +7,49 @@
nCats.url = "github:dwinkler1/nixCatsConfig";
nCats.inputs.nixpkgs.follows = "nixpkgs";
};
outputs =
{
self,
nixpkgs,
nCats,
...
}@inputs:
let
forSystems = nixpkgs.lib.genAttrs nixpkgs.lib.platforms.all;
in
{
packages = forSystems (
system:
let
outputs = {
self,
nixpkgs,
nCats,
...
} @ inputs: let
forSystems = nixpkgs.lib.genAttrs nixpkgs.lib.platforms.all;
in {
packages = forSystems (
system: let
inherit (nCats) utils;
finalPackage = nCats.packages.${system}.default.override (prev: {
dependencyOverlays =
prev.dependencyOverlays
++ [
(utils.standardPluginOverlay inputs)
(import ./rpkgs.nix)
];
categoryDefinitions = utils.mergeCatDefs prev.categoryDefinitions (
{
pkgs,
settings,
categories,
name,
extra,
mkPlugin,
...
} @ packageDef: let
rpkgs = import ./rpkgs.nix pkgs;
in {
lspsAndRuntimeDeps.rdev = with pkgs; [
rWrapper
just
wget
];
}
);
inherit (nCats) utils;
finalPackage = nCats.packages.${system}.default.override (prev: {
categoryDefinitions = utils.mergeCatDefs prev.categoryDefinitions (
{
pkgs,
settings,
categories,
name,
extra,
mkPlugin,
...
}@packageDef:
let
rpkgs = import ./rpkgs.nix pkgs;
in
{
lspsAndRuntimeDeps.rdev = with pkgs; [
(rWrapper.override {
packages = rpkgs;
})
just
wget
];
}
);
packageDefinitions = prev.packageDefinitions // {
packageDefinitions =
prev.packageDefinitions
// {
nixCats = utils.mergeCatDefs prev.packageDefinitions.nixCats (
{ ... }:
{
{...}: {
settings = {
suffix-path = false;
suffix-LD = false;
@ -62,11 +60,10 @@
}
);
};
});
in
});
in
# and
utils.mkAllWithDefault finalPackage
);
};
);
};
}

View file

@ -1,22 +1,30 @@
pkgs: with pkgs.rPackages; [
languageserver
fixest
dplyr
ggplot2
(buildRPackage {
name = "nvimcom";
src = pkgs.fetchFromGitHub {
owner = "R-nvim";
repo = "R.nvim";
rev = "f30c3b2be9ca1a3c277c5e66f5612774cc3fbcf4";
sha256 = "sha256-X5ZfbrG7FtGJpnMJ2b7FMY/OM9rIIliFSqnbtudZCZg=";
};
sourceRoot = "source/nvimcom";
buildInputs = with pkgs; [
R
gcc
gnumake
final: prev: {
rWrapper = prev.rWrapper.override {
packages = with prev.rPackages; [
languageserver
fixest
dplyr
ggplot2
janitor
tidyr
WeightIt
broom
(buildRPackage {
name = "nvimcom";
src = pkgs.fetchFromGitHub {
owner = "R-nvim";
repo = "R.nvim";
rev = "f30c3b2be9ca1a3c277c5e66f5612774cc3fbcf4";
sha256 = "sha256-X5ZfbrG7FtGJpnMJ2b7FMY/OM9rIIliFSqnbtudZCZg=";
};
sourceRoot = "source/nvimcom";
buildInputs = with prev; [
R
gcc
gnumake
];
propagatedBuildInputs = [ ];
})
];
propagatedBuildInputs = [ ];
})
]
};
}