diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index c3c7bf5e0971..6459c81087cb 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -1151,6 +1151,12 @@ githubId = 56650223; name = "Artturi N"; }; + ayazhafiz = { + email = "ayaz.hafiz.1@gmail.com"; + github = "ayazhafiz"; + githubId = 262763; + name = "Ayaz Hafiz"; + }; b4dm4n = { email = "fabianm88@gmail.com"; github = "B4dM4n"; diff --git a/pkgs/development/python-modules/entry-points-txt/default.nix b/pkgs/development/python-modules/entry-points-txt/default.nix new file mode 100644 index 000000000000..d52e9ea0d3be --- /dev/null +++ b/pkgs/development/python-modules/entry-points-txt/default.nix @@ -0,0 +1,22 @@ +{ lib +, buildPythonPackage +, fetchurl +}: + +buildPythonPackage rec { + pname = "entry-points-txt"; + version = "0.1.0"; + format = "wheel"; + + src = fetchurl { + url = "https://github.com/jwodder/entry-points-txt/releases/download/v0.1.0/entry_points_txt-0.1.0-py3-none-any.whl"; + sha256 = "29773bed3d9d337766a394e19d6f7ab0be3ed7d6f3ebb753ff0f7f48f056aa8e"; + }; + + meta = with lib; { + homepage = "https://github.com/jwodder/entry-points-txt"; + description = "Read & write entry_points.txt files"; + license = with licenses; [ mit ]; + maintainers = with lib.maintainers; [ ayazhafiz ]; + }; +} diff --git a/pkgs/development/python-modules/headerparser/default.nix b/pkgs/development/python-modules/headerparser/default.nix new file mode 100644 index 000000000000..3ad265c217f7 --- /dev/null +++ b/pkgs/development/python-modules/headerparser/default.nix @@ -0,0 +1,28 @@ +{ lib +, buildPythonPackage +, fetchPypi +, entry-points-txt +, six +}: + +buildPythonPackage rec { + pname = "headerparser"; + version = "0.4.0"; + + src = fetchPypi{ + inherit pname; + inherit version; + sha256 = "b8ceae4c5e6133fda666d022684e93f9b3d45815c2c7881018123c71ff28c5cc"; + }; + + buildInputs = [ + six + ]; + + meta = with lib; { + homepage = "https://github.com/jwodder/headerparser"; + description = "argparse for mail-style headers"; + license = with licenses; [ mit ]; + maintainers = with lib.maintainers; [ ayazhafiz ]; + }; +} diff --git a/pkgs/development/python-modules/wheel-filename/default.nix b/pkgs/development/python-modules/wheel-filename/default.nix new file mode 100644 index 000000000000..351bc86686a3 --- /dev/null +++ b/pkgs/development/python-modules/wheel-filename/default.nix @@ -0,0 +1,27 @@ +{ lib +, buildPythonPackage +, fetchurl +, attrs +}: + +buildPythonPackage rec { + pname = "wheel-filename"; + version = "1.3.0"; + format = "wheel"; + + src = fetchurl { + url = "https://github.com/jwodder/wheel-filename/releases/download/v1.1.0/wheel_filename-1.1.0-py3-none-any.whl"; + sha256 = "0aee45553f34e3a1b8a5db64aa832326f13c138b7f925a53daf96f984f9e6a38"; + }; + + buildInputs = [ + attrs + ]; + + meta = with lib; { + homepage = "https://github.com/jwodder/wheel-filename"; + description = "Parse wheel filenames"; + license = with licenses; [ mit ]; + maintainers = with lib.maintainers; [ ayazhafiz ]; + }; +} diff --git a/pkgs/development/python-modules/wheel-inspect/default.nix b/pkgs/development/python-modules/wheel-inspect/default.nix new file mode 100644 index 000000000000..88fd592da8fb --- /dev/null +++ b/pkgs/development/python-modules/wheel-inspect/default.nix @@ -0,0 +1,65 @@ +{ lib +, buildPythonPackage +, fetchurl +, bleach, docutils, pygments, six +, attrs, entry-points-txt, headerparser, packaging, wheel-filename +}: + +# wheel-filename is stuck on readme_renderer~=24.0.0, but the upstream is at a +# future version. +let readme_renderer_24 = buildPythonPackage rec { + pname = "readme_renderer"; + version = "24.0.0"; + format = "wheel"; + + src = fetchurl { + url = "https://files.pythonhosted.org/packages/c3/7e/d1aae793900f36b097cbfcc5e70eef82b5b56423a6c52a36dce51fedd8f0/readme_renderer-24.0-py2.py3-none-any.whl"; + sha256 = "c8532b79afc0375a85f10433eca157d6b50f7d6990f337fa498c96cd4bfc203d"; + }; + + doCheck = false; + + buildInputs = [ + bleach + docutils + pygments + six + ]; + + meta = with lib; { + description = "Python library for rendering readme descriptions"; + homepage = "https://github.com/pypa/readme_renderer"; + license = with licenses; [ asl20 ]; + maintainers = with lib.maintainers; [ ayazhafiz ]; + }; +}; + +in buildPythonPackage rec { + version = "1.7.0"; + pname = "wheel-inspect"; + format = "wheel"; + + src = fetchurl { + url = "https://github.com/jwodder/wheel-inspect/releases/download/v1.7.0/wheel_inspect-1.7.0-py3-none-any.whl"; + sha256 = "69b34de1f4464ddfc76280c4563e4afc644de2c88e3ae6882f030afdad3d73e4"; + }; + + propagatedBuildInputs = [ + attrs + bleach + docutils + entry-points-txt + headerparser + packaging + pygments + readme_renderer_24 + wheel-filename + ]; + + meta = with lib; { + homepage = "https://github.com/jwodder/wheel-inspect"; + description = "Extract information from wheels"; + license = with licenses; [ mit ]; + maintainers = with lib.maintainers; [ ayazhafiz ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 9d7bf43cc8ef..20398e7a3769 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2436,6 +2436,8 @@ in { routerFeatures = true; }; + entry-points-txt = callPackage ../development/python-modules/entry-points-txt { }; + entrypoint2 = callPackage ../development/python-modules/entrypoint2 { }; entrypoints = callPackage ../development/python-modules/entrypoints { }; @@ -3436,6 +3438,8 @@ in { hdmedians = callPackage ../development/python-modules/hdmedians { }; + headerparser = callPackage ../development/python-modules/headerparser { }; + heapdict = callPackage ../development/python-modules/heapdict { }; helpdev = callPackage ../development/python-modules/helpdev { }; @@ -9799,6 +9803,10 @@ in { wheel = callPackage ../development/python-modules/wheel { }; + wheel-filename = callPackage ../development/python-modules/wheel-filename { }; + + wheel-inspect = callPackage ../development/python-modules/wheel-inspect { }; + whichcraft = callPackage ../development/python-modules/whichcraft { }; whirlpool-sixth-sense = callPackage ../development/python-modules/whirlpool-sixth-sense { };