Skip to content

Commit

Permalink
Merge pull request #215001 from GenericNerdyUsername/fusesoc
Browse files Browse the repository at this point in the history
fusesoc: init at 1.12.0
  • Loading branch information
SuperSandro2000 committed May 21, 2023
2 parents d57b341 + 1ff2248 commit ddf8259
Show file tree
Hide file tree
Showing 8 changed files with 217 additions and 0 deletions.
31 changes: 31 additions & 0 deletions pkgs/development/python-modules/ipyxact/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
{ buildPythonPackage
, fetchFromGitHub
, lib
, pyyaml
, six
, lxml
}:

buildPythonPackage rec {
pname = "ipyxact";
version = "0.3.2";

propagatedBuildInputs = [ pyyaml ];
checkInputs = [ six lxml ];

src = fetchFromGitHub {
owner = "olofk";
repo = pname;
rev = "v${version}";
hash = "sha256-myD+NnqcxxaSAV7qZa8xqeciaiFqFePqIzd7sb/2GXA=";
};

pythonImportsCheck = [ "ipyxact" ];

meta = with lib; {
homepage = "https://github.com/olofk/ipyxact";
description = "IP-XACT parser";
maintainers = with maintainers; [ genericnerdyusername ];
license = licenses.mit;
};
}
47 changes: 47 additions & 0 deletions pkgs/development/python-modules/okonomiyaki/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
{ buildPythonPackage
, stdenv
, fetchFromGitHub
, lib
, attrs
, distro
, jsonschema
, six
, zipfile2
, hypothesis
, mock
, packaging
, testfixtures
}:

buildPythonPackage rec {
pname = "okonomiyaki";
version = "1.3.2";

src = fetchFromGitHub {
owner = "enthought";
repo = pname;
rev = version;
hash = "sha256-eWCOuGtdjBGThAyu15aerclkSWC593VGDPHJ98l30iY=";
};

propagatedBuildInputs = [ distro attrs jsonschema six zipfile2 ];

preCheck = ''
substituteInPlace okonomiyaki/runtimes/tests/test_runtime.py \
--replace 'runtime_info = PythonRuntime.from_running_python()' 'raise unittest.SkipTest() #'
'' + lib.optionalString stdenv.isDarwin ''
substituteInPlace okonomiyaki/platforms/tests/test_pep425.py \
--replace 'self.assertEqual(platform_tag, self.tag.platform)' 'raise unittest.SkipTest()'
'';

checkInputs = [ hypothesis mock packaging testfixtures ];

pythonImportsCheck = [ "okonomiyaki" ];

meta = with lib; {
homepage = "https://github.com/enthought/okonomiyaki";
description = "An experimental library aimed at consolidating a lot of low-level code used for Enthought's eggs";
maintainers = with maintainers; [ genericnerdyusername ];
license = licenses.bsd3;
};
}
48 changes: 48 additions & 0 deletions pkgs/development/python-modules/simplesat/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
{ buildPythonPackage
, fetchFromGitHub
, writeText
, lib
, attrs
, six
, okonomiyaki
}:

let
version = "0.8.2";

versionFile = writeText "simplesat_ver" ''
version = '${version}'
full_version = '${version}'
git_revision = '0000000000000000000000000000000000000000'
is_released = True
msi_version = '${version}.000'
version_info = (${lib.versions.major version}, ${lib.versions.minor version}, ${lib.versions.patch version}, 'final', 0)
'';

in buildPythonPackage rec {
pname = "simplesat";
inherit version;

propagatedBuildInputs = [ attrs six okonomiyaki ];

src = fetchFromGitHub {
owner = "enthought";
repo = "sat-solver";
rev = "v${version}";
hash = "sha256-6BQn1W2JGrMmNqgxi+sXx06XzNMcvwqYGMkpD0SSpT8=";
};

preConfigure = ''
cp ${versionFile} simplesat/_version.py
'';
dontUseSetuptoolsCheck = true;

pythonImportsCheck = [ "simplesat" ];

meta = with lib; {
homepage = "https://github.com/enthought/sat-solver";
description = "Prototype for SAT-based dependency handling";
maintainers = with maintainers; [ genericnerdyusername ];
license = licenses.bsd3;
};
}
27 changes: 27 additions & 0 deletions pkgs/development/python-modules/zipfile2/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
{ buildPythonPackage
, fetchFromGitHub
, lib
}:

buildPythonPackage rec {
pname = "zipfile2";
version = "0.0.12";

src = fetchFromGitHub {
owner = "cournape";
repo = pname;
rev = "v${version}";
hash = "sha256-BwcEgW4XrQqz0Jmtbyxf8q0mWTJXv2dL3Tk7N/IYuMI=";
};

patches = [ ./no-setuid.patch ];

pythonImportsCheck = [ "zipfile2" ];

meta = with lib; {
homepage = "https://github.com/cournape/zipfile2";
description = "A backwards-compatible improved zipfile class";
maintainers = with maintainers; [ genericnerdyusername ];
license = licenses.psfl;
};
}
15 changes: 15 additions & 0 deletions pkgs/development/python-modules/zipfile2/no-setuid.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
diff --git a/zipfile2/tests/test__zipfile.py b/zipfile2/tests/test__zipfile.py
index 60f2ed2..db6e5bc 100644
--- a/zipfile2/tests/test__zipfile.py
+++ b/zipfile2/tests/test__zipfile.py
@@ -585,8 +585,8 @@ class TestsPermissionExtraction(unittest.TestCase):
if index & 1 << order:
mode |= permissions[permgroup][order]
for order in range(3):
- if specialindex & 1 << order:
- mode |= permissions['special'][order]
+ if specialindex & 1 << order and order == 0:
+ raise unittest.SkipTest("The nix build process doesn't allow you to use the setuid bit")
os.chmod(path, mode)
real_permission = os.stat(path).st_mode & 0xFFF
self.files.append((path, real_permission))
39 changes: 39 additions & 0 deletions pkgs/tools/package-management/fusesoc/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
{ buildPythonPackage
, fetchPypi
, lib
, verilog
, verilator
, gnumake
, gcc
, edalize
, fastjsonschema
, pyparsing
, pyyaml
, simplesat
, ipyxact
, setuptools-scm
}:
buildPythonPackage rec {
pname = "fusesoc";
version = "2.2.1";

src = fetchPypi {
inherit pname version;
hash = "sha256-M36bXBgY8hR33AVDlHoH8PZJG2Bi0KOEI07IMns7R4w=";
};

nativeBuildInputs = [ setuptools-scm ];

propagatedBuildInputs = [ edalize fastjsonschema pyparsing pyyaml simplesat ipyxact ];

pythonImportsCheck = [ "fusesoc" ];

makeWrapperArgs = [ "--suffix PATH : ${lib.makeBinPath [ verilog verilator gnumake ]}"];

meta = with lib; {
homepage = "https://github.com/olofk/fusesoc";
description = "A package manager and build tools for HDL code";
maintainers = with maintainers; [ genericnerdyusername ];
license = licenses.bsd3;
};
}
2 changes: 2 additions & 0 deletions pkgs/top-level/all-packages.nix
Original file line number Diff line number Diff line change
Expand Up @@ -2290,6 +2290,8 @@ with pkgs;

fuse-emulator = callPackage ../applications/emulators/fuse-emulator { };

fusesoc = python3Packages.callPackage ../tools/package-management/fusesoc { };

fw = callPackage ../tools/misc/fw {
inherit (darwin.apple_sdk.frameworks) Security;
};
Expand Down
8 changes: 8 additions & 0 deletions pkgs/top-level/python-packages.nix
Original file line number Diff line number Diff line change
Expand Up @@ -4983,6 +4983,8 @@ self: super: with self; {

ipywidgets = callPackage ../development/python-modules/ipywidgets { };

ipyxact = callPackage ../development/python-modules/ipyxact { };

irc = callPackage ../development/python-modules/irc { };

ircrobots = callPackage ../development/python-modules/ircrobots { };
Expand Down Expand Up @@ -6943,6 +6945,8 @@ self: super: with self; {

oemthermostat = callPackage ../development/python-modules/oemthermostat { };

okonomiyaki = callPackage ../development/python-modules/okonomiyaki { };

okta = callPackage ../development/python-modules/okta { };

olefile = callPackage ../development/python-modules/olefile { };
Expand Down Expand Up @@ -11077,6 +11081,8 @@ self: super: with self; {

simplenote = callPackage ../development/python-modules/simplenote { };

simplesat = callPackage ../development/python-modules/simplesat { };

simple-di = callPackage ../development/python-modules/simple-di { };

simple-rest-client = callPackage ../development/python-modules/simple-rest-client { };
Expand Down Expand Up @@ -13292,6 +13298,8 @@ self: super: with self; {

zimports = callPackage ../development/python-modules/zimports { };

zipfile2 = callPackage ../development/python-modules/zipfile2 { };

zipp = callPackage ../development/python-modules/zipp { };

zipstream = callPackage ../development/python-modules/zipstream { };
Expand Down

0 comments on commit ddf8259

Please sign in to comment.