diff --git a/pkgs/development/python-modules/advocate/default.nix b/pkgs/development/python-modules/advocate/default.nix new file mode 100644 index 000000000000..7462dfb86837 --- /dev/null +++ b/pkgs/development/python-modules/advocate/default.nix @@ -0,0 +1,45 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, ndg-httpsclient +, netifaces +, pyasn1 +, pyopenssl +, requests +, six +, urllib3 +}: + +buildPythonPackage rec { + pname = "advocate"; + version = "1.0.0"; + + src = fetchFromGitHub { + owner = "JordanMilne"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-opObkjkad+yrLE2b7DULHjGuNeVhu4fEmSavgA39YPw="; + }; + + propagatedBuildInputs = [ + ndg-httpsclient + netifaces + pyasn1 + pyopenssl + requests + six + urllib3 + ]; + + # The tests do network requests, so disabled + doCheck = false; + + pythonImportsCheck = [ "advocate" ]; + + meta = with lib; { + homepage = "https://github.com/JordanMilne/Advocate"; + description = "An SSRF-preventing wrapper around Python's requests library"; + license = licenses.asl20; + maintainers = with maintainers; [ pborzenkov ]; + }; +} diff --git a/pkgs/servers/calibre-web/default.nix b/pkgs/servers/calibre-web/default.nix index 308654039983..675230478f91 100644 --- a/pkgs/servers/calibre-web/default.nix +++ b/pkgs/servers/calibre-web/default.nix @@ -7,16 +7,17 @@ python3.pkgs.buildPythonApplication rec { pname = "calibre-web"; - version = "0.6.17"; + version = "0.6.18"; src = fetchFromGitHub { owner = "janeczku"; repo = "calibre-web"; rev = version; - sha256 = "sha256-K2va9as+z00txpg/0fR89+kpMzpQSiSSIV489NDs8Bs="; + sha256 = "sha256-KjmpFetNhNM5tL34e/Pn1i3hc86JZglubSMsHZWu198="; }; propagatedBuildInputs = with python3Packages; [ + advocate backports_abc flask-babel flask_login @@ -30,6 +31,7 @@ python3.pkgs.buildPythonApplication rec { tornado unidecode Wand + werkzeug ]; patches = [ @@ -53,11 +55,14 @@ python3.pkgs.buildPythonApplication rec { substituteInPlace setup.cfg \ --replace "cps = calibreweb:main" "calibre-web = calibreweb:main" \ - --replace "flask-wtf>=0.14.2,<0.16.0" "flask-wtf>=0.14.2" \ - --replace "lxml>=3.8.0,<4.7.0" "lxml>=3.8.0" \ - --replace "PyPDF3>=1.0.0,<1.0.4" "PyPDF3>=1.0.0" \ - --replace "requests>=2.11.1,<2.25.0" "requests" \ - --replace "unidecode>=0.04.19,<1.3.0" "unidecode>=0.04.19" + --replace "Flask>=1.0.2,<2.1.0" "Flask>=1.0.2" \ + --replace "Flask-Login>=0.3.2,<0.5.1" "Flask-Login>=0.3.2" \ + --replace "flask-wtf>=0.14.2,<1.1.0" "flask-wtf>=0.14.2" \ + --replace "lxml>=3.8.0,<4.9.0" "lxml>=3.8.0" \ + --replace "PyPDF3>=1.0.0,<1.0.7" "PyPDF3>=1.0.0" \ + --replace "requests>=2.11.1,<2.28.0" "requests" \ + --replace "unidecode>=0.04.19,<1.4.0" "unidecode>=0.04.19" \ + --replace "werkzeug<2.1.0" "" ''; # Upstream repo doesn't provide any tests. diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 4bcef40549f7..691cacc2f275 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -218,6 +218,8 @@ in { advantage-air = callPackage ../development/python-modules/advantage-air { }; + advocate = callPackage ../development/python-modules/advocate { }; + aemet-opendata = callPackage ../development/python-modules/aemet-opendata { }; aenum = callPackage ../development/python-modules/aenum { };