Unverified Commit 57280695 authored by Aleksana's avatar Aleksana Committed by GitHub
Browse files

python312Packages.dmt-core: init at 2.1.0 (#336002)

parents 2cdf53c7 4403dedb
Loading
Loading
Loading
Loading
+84 −0
Original line number Diff line number Diff line
{
  buildPythonPackage,
  colormath,
  cycler,
  fetchPypi,
  h5py,
  joblib,
  lib,
  more-itertools,
  numpy,
  pandas,
  pint,
  pyarrow,
  pytest,
  pyyaml,
  reprint,
  requests,
  scikit-rf,
  scipy,
  semver,
  setuptools,
  verilogae,
}:

buildPythonPackage rec {
  pname = "dmt-core";
  version = "2.1.0";
  pyproject = true;

  src = fetchPypi {
    inherit version;
    pname = "DMT_core";
    hash = "sha256-489E+uNn4NgyCwxsUMEPH/1ZuM+5uNq4zx8F88rkHMU=";
  };

  build-system = [
    setuptools
  ];

  dependencies = [
    colormath
    cycler
    h5py
    joblib
    more-itertools
    pandas
    pint
    pyarrow
    pytest
    pyyaml
    requests
    scikit-rf
    scipy
    setuptools
    numpy
    semver
  ];

  nativeBuildInputs = [
    reprint
    verilogae
  ];

  preConfigure = ''
    export HOME=$(mktemp -d)
  '';

  pythonImportsCheck = [
    "DMT.core"
    "reprint"
    "verilogae"
  ];

  meta = {
    changelog = "https://gitlab.com/dmt-development/dmt-core/-/blob/Version_${version}/CHANGELOG?ref_type=tags";
    description = "Tool to help modeling engineers extract model parameters, run circuit and TCAD simulations and automate infrastructure";
    homepage = "https://gitlab.com/dmt-development/dmt-core";
    license = lib.licenses.gpl3Plus;
    maintainers = with lib.maintainers; [
      jasonodoom
      jleightcap
    ];
  };
}
+49 −0
Original line number Diff line number Diff line
{
  lib,
  buildPythonPackage,
  fetchFromGitHub,
  setuptools,
  colorama,
  six,
}:

buildPythonPackage rec {
  pname = "reprint";
  version = "0.6.0";
  pyproject = true;

  src = fetchFromGitHub {
    owner = "Yinzo";
    repo = "reprint";
    rev = "${version}";
    hash = "sha256-99FC12LcvvRRwNAxDSvWo9vRYmieL0JHSaCJqO/UGEs=";
  };

  postPatch = ''
    substituteInPlace setup.py \
      --replace-fail "'backports.shutil_get_terminal_size', " ""
  '';

  build-system = [
    setuptools
  ];

  dependencies = [
    colorama
    six
  ];

  pythonImportsCheck = [
    "reprint"
  ];

  meta = {
    description = "Module for binding variables and refreshing multi-line output in terminal";
    homepage = "https://github.com/Yinzo/reprint";
    license = lib.licenses.asl20;
    maintainers = with lib.maintainers; [
      jasonodoom
      jleightcap
    ];
  };
}
+1769 −0

File added.

Preview size limit exceeded, changes collapsed.

+79 −0
Original line number Diff line number Diff line
{
  lib,
  buildPythonPackage,
  fetchFromGitHub,
  setuptools-rust,
  rustPlatform,
  cargo,
  rustc,
  autoPatchelfHook,
  pkg-config,
  llvmPackages_15,
  libxml2,
  ncurses,
  zlib,
}:

buildPythonPackage rec {
  pname = "verilogae";
  version = "1.0.0";
  pyproject = true;

  src = fetchFromGitHub {
    owner = "pascalkuthe";
    repo = "OpenVAF";
    rev = "VerilogAE-v${version}";
    hash = "sha256-TILKKmgSyhyxp88sdflDXAoH++iP6CMpdoXN1/1fsjU=";
  };

  postPatch = ''
    substituteInPlace openvaf/llvm/src/initialization.rs \
      --replace-fail "i8" "libc::c_char"
    substituteInPlace openvaf/osdi/build.rs \
      --replace-fail "-fPIC" ""
  '';

  cargoDeps = rustPlatform.importCargoLock {
    lockFile = ./Cargo.lock;
    outputHashes = {
      "salsa-0.17.0-pre.2" = "sha256-6GssvV76lFr5OzAUekz2h6f82Tn7usz5E8MSZ5DmgJw=";
    };
  };

  nativeBuildInputs = [
    setuptools-rust
    rustPlatform.cargoSetupHook
    rustPlatform.bindgenHook
    cargo
    rustc
    autoPatchelfHook
    pkg-config
    llvmPackages_15.clang
    llvmPackages_15.llvm
  ];

  buildInputs = [
    libxml2.dev
    llvmPackages_15.libclang
    ncurses
    zlib
  ];

  cargoBuildType = "release";

  pythonImportsCheck = [ "verilogae" ];

  hardeningDisable = [ "pic" ];

  meta = {
    description = "Verilog-A tool useful for compact model parameter extraction";
    homepage = "https://man.sr.ht/~dspom/openvaf_doc/verilogae/";
    license = lib.licenses.gpl3Only;
    maintainers = with lib.maintainers; [
      jasonodoom
      jleightcap
    ];
    platforms = lib.platforms.linux;
    sourceProvenance = [ lib.sourceTypes.binaryBytecode ];
  };
}
+6 −0
Original line number Diff line number Diff line
@@ -3610,6 +3610,8 @@ self: super: with self; {
  dmenu-python = callPackage ../development/python-modules/dmenu { };
  dmt-core = callPackage ../development/python-modules/dmt-core { };
  dm-control = callPackage ../development/python-modules/dm-control { };
  dm-env = callPackage ../development/python-modules/dm-env { };
@@ -13579,6 +13581,8 @@ self: super: with self; {
  reproject = callPackage ../development/python-modules/reproject { };
  reprint = callPackage ../development/python-modules/reprint { };
  reprshed = callPackage ../development/python-modules/reprshed { };
  reptor = callPackage ../development/python-modules/reptor { };
@@ -17204,6 +17208,8 @@ self: super: with self; {
  verboselogs = callPackage ../development/python-modules/verboselogs { };
  verilogae = callPackage ../development/python-modules/verilogae { };
  verlib2 = callPackage ../development/python-modules/verlib2 { };
  versioneer = callPackage ../development/python-modules/versioneer { };