diff options
author | Fabián Heredia Montiel <fabianhjr@protonmail.com> | 2022-12-12 11:11:10 -0600 |
---|---|---|
committer | Robert Schütz <github@dotlambda.de> | 2022-12-15 00:28:46 -0800 |
commit | 8549e49c1833197f71e62e6d3f51bf72d4338ee2 (patch) | |
tree | 3abb25c472eb49c3b224a36a8618b5e16416b89f /pkgs | |
parent | 38358880b31c619a4596f3a462095a7f41ed0eb1 (diff) |
python2Packages.scandir: revert removal
This reverts commit 7d4a0668d26c39bfcd1b40b21b7d169cedbfe9aa. Closes https://github.com/NixOS/nixpkgs/issues/205742
Diffstat (limited to 'pkgs')
-rw-r--r-- | pkgs/development/python2-modules/scandir/add-aarch64-darwin-dirent.patch | 28 | ||||
-rw-r--r-- | pkgs/development/python2-modules/scandir/default.nix | 24 | ||||
-rw-r--r-- | pkgs/top-level/python2-packages.nix | 2 |
3 files changed, 54 insertions, 0 deletions
diff --git a/pkgs/development/python2-modules/scandir/add-aarch64-darwin-dirent.patch b/pkgs/development/python2-modules/scandir/add-aarch64-darwin-dirent.patch new file mode 100644 index 0000000000000..1b35a0b950ce2 --- /dev/null +++ b/pkgs/development/python2-modules/scandir/add-aarch64-darwin-dirent.patch @@ -0,0 +1,28 @@ +diff --git a/scandir.py b/scandir.py +index 3f602fb..40af3e5 100644 +--- a/scandir.py ++++ b/scandir.py +@@ -23,6 +23,7 @@ from os import listdir, lstat, stat, strerror + from os.path import join, islink + from stat import S_IFDIR, S_IFLNK, S_IFREG + import collections ++import platform + import sys + + try: +@@ -432,6 +433,15 @@ elif sys.platform.startswith(('linux', 'darwin', 'sunos5')) or 'bsd' in sys.plat + ('__d_padding', ctypes.c_uint8 * 4), + ('d_name', ctypes.c_char * 256), + ) ++ elif 'darwin' in sys.platform and 'arm64' in platform.machine(): ++ _fields_ = ( ++ ('d_ino', ctypes.c_uint64), ++ ('d_off', ctypes.c_uint64), ++ ('d_reclen', ctypes.c_uint16), ++ ('d_namlen', ctypes.c_uint16), ++ ('d_type', ctypes.c_uint8), ++ ('d_name', ctypes.c_char * 1024), ++ ) + else: + _fields_ = ( + ('d_ino', ctypes.c_uint32), # must be uint32, not ulong diff --git a/pkgs/development/python2-modules/scandir/default.nix b/pkgs/development/python2-modules/scandir/default.nix new file mode 100644 index 0000000000000..e712cca8348d1 --- /dev/null +++ b/pkgs/development/python2-modules/scandir/default.nix @@ -0,0 +1,24 @@ +{ lib, python, buildPythonPackage, fetchPypi }: + +buildPythonPackage rec { + pname = "scandir"; + version = "1.10.0"; + + src = fetchPypi { + inherit pname version; + sha256 = "1bkqwmf056pkchf05ywbnf659wqlp6lljcdb0y88wr9f0vv32ijd"; + }; + + patches = [ + ./add-aarch64-darwin-dirent.patch + ]; + + checkPhase = "${python.interpreter} test/run_tests.py"; + + meta = with lib; { + description = "A better directory iterator and faster os.walk()"; + homepage = "https://github.com/benhoyt/scandir"; + license = licenses.gpl3; + maintainers = with maintainers; [ abbradar ]; + }; +} diff --git a/pkgs/top-level/python2-packages.nix b/pkgs/top-level/python2-packages.nix index c5f47d24f7ad9..b88fc47d33156 100644 --- a/pkgs/top-level/python2-packages.nix +++ b/pkgs/top-level/python2-packages.nix @@ -67,6 +67,8 @@ with self; with super; { rpm = disabled super.rpm; + scandir = callPackage ../development/python2-modules/scandir { }; + sequoia = disabled super.sequoia; setuptools = callPackage ../development/python2-modules/setuptools { }; |