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 { stdenv
, boost , boost
, callPackage
, coreutils , coreutils
, cppzmq
, curl
, libepoxy
, fetchFromGitHub
, glm
, gtkmm3
, lib
, libarchive
, libgit2
, librsvg
, libspnav , libspnav
, libuuid
, opencascade-occt
, pkg-config
, podofo
, python3 , python3
, sqlite
, wrapGAppsHook , wrapGAppsHook
}: }:
let
base = callPackage ./base.nix { };
in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "horizon-eda"; inherit (base) pname version src meta CASROOT;
version = "2.5.0";
src = fetchFromGitHub { # provide base for python module
owner = "horizon-eda"; passthru = {
repo = "horizon"; inherit base;
rev = "v${version}";
sha256 = "sha256-UcjbDJR6shyETpanNkRoH8LF8r6gFjsyNHVSCMHKqS8=";
}; };
buildInputs = [ buildInputs = base.buildInputs ++ [
cppzmq
curl
libepoxy
glm
gtkmm3
libarchive
libgit2
librsvg
libspnav libspnav
libuuid
opencascade-occt
podofo
python3
sqlite
]; ];
nativeBuildInputs = [ nativeBuildInputs = base.nativeBuildInputs ++ [
boost.dev boost.dev
pkg-config
wrapGAppsHook wrapGAppsHook
python3
]; ];
CASROOT = opencascade-occt;
installFlags = [ installFlags = [
"INSTALL=${coreutils}/bin/install" "INSTALL=${coreutils}/bin/install"
"DESTDIR=$(out)" "DESTDIR=$(out)"
@ -64,12 +35,4 @@ stdenv.mkDerivation rec {
]; ];
enableParallelBuilding = true; 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 { }; 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 { }; howdoi = callPackage ../development/python-modules/howdoi { };
hpack = callPackage ../development/python-modules/hpack { }; hpack = callPackage ../development/python-modules/hpack { };