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,23 +7,24 @@
nCats.url = "github:dwinkler1/nixCatsConfig"; nCats.url = "github:dwinkler1/nixCatsConfig";
nCats.inputs.nixpkgs.follows = "nixpkgs"; nCats.inputs.nixpkgs.follows = "nixpkgs";
}; };
outputs = outputs = {
{
self, self,
nixpkgs, nixpkgs,
nCats, nCats,
... ...
}@inputs: } @ inputs: let
let
forSystems = nixpkgs.lib.genAttrs nixpkgs.lib.platforms.all; forSystems = nixpkgs.lib.genAttrs nixpkgs.lib.platforms.all;
in in {
{
packages = forSystems ( packages = forSystems (
system: system: let
let
inherit (nCats) utils; inherit (nCats) utils;
finalPackage = nCats.packages.${system}.default.override (prev: { finalPackage = nCats.packages.${system}.default.override (prev: {
dependencyOverlays =
prev.dependencyOverlays
++ [
(utils.standardPluginOverlay inputs)
(import ./rpkgs.nix)
];
categoryDefinitions = utils.mergeCatDefs prev.categoryDefinitions ( categoryDefinitions = utils.mergeCatDefs prev.categoryDefinitions (
{ {
pkgs, pkgs,
@ -33,25 +34,22 @@
extra, extra,
mkPlugin, mkPlugin,
... ...
}@packageDef: } @ packageDef: let
let
rpkgs = import ./rpkgs.nix pkgs; rpkgs = import ./rpkgs.nix pkgs;
in in {
{
lspsAndRuntimeDeps.rdev = with pkgs; [ lspsAndRuntimeDeps.rdev = with pkgs; [
(rWrapper.override { rWrapper
packages = rpkgs;
})
just just
wget wget
]; ];
} }
); );
packageDefinitions = prev.packageDefinitions // { packageDefinitions =
prev.packageDefinitions
// {
nixCats = utils.mergeCatDefs prev.packageDefinitions.nixCats ( nixCats = utils.mergeCatDefs prev.packageDefinitions.nixCats (
{ ... }: {...}: {
{
settings = { settings = {
suffix-path = false; suffix-path = false;
suffix-LD = false; suffix-LD = false;
@ -66,7 +64,6 @@
in in
# and # and
utils.mkAllWithDefault finalPackage utils.mkAllWithDefault finalPackage
); );
}; };
} }

View file

@ -1,8 +1,14 @@
pkgs: with pkgs.rPackages; [ final: prev: {
rWrapper = prev.rWrapper.override {
packages = with prev.rPackages; [
languageserver languageserver
fixest fixest
dplyr dplyr
ggplot2 ggplot2
janitor
tidyr
WeightIt
broom
(buildRPackage { (buildRPackage {
name = "nvimcom"; name = "nvimcom";
src = pkgs.fetchFromGitHub { src = pkgs.fetchFromGitHub {
@ -12,11 +18,13 @@ pkgs: with pkgs.rPackages; [
sha256 = "sha256-X5ZfbrG7FtGJpnMJ2b7FMY/OM9rIIliFSqnbtudZCZg="; sha256 = "sha256-X5ZfbrG7FtGJpnMJ2b7FMY/OM9rIIliFSqnbtudZCZg=";
}; };
sourceRoot = "source/nvimcom"; sourceRoot = "source/nvimcom";
buildInputs = with pkgs; [ buildInputs = with prev; [
R R
gcc gcc
gnumake gnumake
]; ];
propagatedBuildInputs = [ ]; propagatedBuildInputs = [ ];
}) })
] ];
};
}