summaryrefslogtreecommitdiff
path: root/overlays/smartprom/default.nix
blob: eaeb080d5e760c99e28c0fdbef8b5e26ad723cd4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
{ prev, final, sources, flakeInputs, ... }:
{
  smartprom = let
    project = flakeInputs.pyproject-nix.lib.project.loadRequirementsTxt {
      projectRoot = sources.smartprom.src;
    };
    python = final.python3;
  in python.pkgs.buildPythonApplication {
    pname = "smartprom";
    version = "2.3.0";

    src = prev.runCommand "sources" {} ''
      mkdir $out
      cp -r ${sources.smartprom.src}/. $out

      mkdir $out/smartprom
      mv $out/megaraid.py $out/smartprom
      mv $out/smartprom.py $out/smartprom/__main__.py
      sed -ri 's/import megaraid/from . import megaraid/' $out/smartprom/__main__.py
      echo >> $out/smartprom/__init__.py

      cp ${./pyproject.toml} $out/pyproject.toml
    '';

    pyproject = true;
    propagatedBuildInputs = (project.renderers.withPackages { inherit python; }) python.pkgs;
  };
}