python311Packages.horizon-eda: init at 2.5.0

This commit is contained in:
Juergen Fitschen 2023-10-07 23:06:56 +02:00 committed by Weijia Wang
parent f203901b4f
commit 4c62088101
4 changed files with 119 additions and 48 deletions

View File

@ -0,0 +1,58 @@
{ lib
, cppzmq
, curl
, fetchFromGitHub
, glm
, gtkmm3
, libarchive
, libepoxy
, libgit2
, librsvg
, libuuid
, opencascade-occt
, pkg-config
, podofo
, sqlite
}:
# This base is used in horizon-eda and python3Packages.horizon-eda
rec {
pname = "horizon-eda";
version = "2.5.0";
src = fetchFromGitHub {
owner = "horizon-eda";
repo = "horizon";
rev = "v${version}";
hash = "sha256-UcjbDJR6shyETpanNkRoH8LF8r6gFjsyNHVSCMHKqS8=";
};
nativeBuildInputs = [
pkg-config
];
buildInputs = [
cppzmq
curl
glm
gtkmm3
libarchive
libepoxy
libgit2
librsvg
libuuid
opencascade-occt
podofo
sqlite
];
CASROOT = opencascade-occt;
meta = with lib; {
description = "A free EDA software to develop printed circuit boards";
homepage = "https://horizon-eda.org";
maintainers = with maintainers; [ guserav jue89 ];
license = licenses.gpl3Plus;
platforms = platforms.linux;
};
}

View File

@ -1,62 +1,33 @@
{ stdenv
, boost
, callPackage
, coreutils
, cppzmq
, curl
, libepoxy
, fetchFromGitHub
, glm
, gtkmm3
, lib
, libarchive
, libgit2
, librsvg
, libspnav
, libuuid
, opencascade-occt
, pkg-config
, podofo
, python3
, sqlite
, wrapGAppsHook
}:
let
base = callPackage ./base.nix { };
in
stdenv.mkDerivation rec {
pname = "horizon-eda";
version = "2.5.0";
inherit (base) pname version src meta CASROOT;
src = fetchFromGitHub {
owner = "horizon-eda";
repo = "horizon";
rev = "v${version}";
sha256 = "sha256-UcjbDJR6shyETpanNkRoH8LF8r6gFjsyNHVSCMHKqS8=";
# provide base for python module
passthru = {
inherit base;
};
buildInputs = [
cppzmq
curl
libepoxy
glm
gtkmm3
libarchive
libgit2
librsvg
buildInputs = base.buildInputs ++ [
libspnav
libuuid
opencascade-occt
podofo
python3
sqlite
];
nativeBuildInputs = [
nativeBuildInputs = base.nativeBuildInputs ++ [
boost.dev
pkg-config
wrapGAppsHook
python3
];
CASROOT = opencascade-occt;
installFlags = [
"INSTALL=${coreutils}/bin/install"
"DESTDIR=$(out)"
@ -64,12 +35,4 @@ stdenv.mkDerivation rec {
];
enableParallelBuilding = true;
meta = with lib; {
description = "A free EDA software to develop printed circuit boards";
homepage = "https://horizon-eda.org";
maintainers = with maintainers; [ guserav ];
license = licenses.gpl3Plus;
platforms = platforms.linux;
};
}

View File

@ -0,0 +1,46 @@
{ lib
, stdenv
, buildPythonPackage
, callPackage
, horizon-eda
, mesa
, pycairo
, python
, pythonOlder
}:
let
base = horizon-eda.passthru.base;
in
buildPythonPackage {
inherit (base) pname version src meta CASROOT;
pyproject = false;
disabled = pythonOlder "3.9";
buildInputs = base.buildInputs ++ [
mesa
mesa.osmesa
python
];
propagatedBuildInputs = [
pycairo
];
nativeBuildInputs = base.nativeBuildInputs;
buildFlags = ["pymodule"];
installPhase = ''
runHook preInstall
mkdir -p $out/${python.sitePackages}
cp build/horizon.so $out/${python.sitePackages}
runHook postInstall
'';
enableParallelBuilding = true;
}

View File

@ -4993,6 +4993,10 @@ self: super: with self; {
hopcroftkarp = callPackage ../development/python-modules/hopcroftkarp { };
horizon-eda = callPackage ../development/python-modules/horizon-eda {
inherit (pkgs) horizon-eda mesa;
};
howdoi = callPackage ../development/python-modules/howdoi { };
hpack = callPackage ../development/python-modules/hpack { };