python311Packages.horizon-eda: init at 2.5.0
This commit is contained in:
parent
f203901b4f
commit
4c62088101
4 changed files with 119 additions and 48 deletions
58
pkgs/applications/science/electronics/horizon-eda/base.nix
Normal file
58
pkgs/applications/science/electronics/horizon-eda/base.nix
Normal 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;
|
||||
};
|
||||
}
|
|
@ -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;
|
||||
};
|
||||
}
|
||||
|
|
46
pkgs/development/python-modules/horizon-eda/default.nix
Normal file
46
pkgs/development/python-modules/horizon-eda/default.nix
Normal 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;
|
||||
}
|
|
@ -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 { };
|
||||
|
|
Loading…
Reference in a new issue