diff --git a/pkgs/applications/editors/retext/default.nix b/pkgs/applications/editors/retext/default.nix index 533e353a43e6..afb48ad65f4f 100644 --- a/pkgs/applications/editors/retext/default.nix +++ b/pkgs/applications/editors/retext/default.nix @@ -1,29 +1,44 @@ -{ lib, python3, fetchFromGitHub, wrapQtAppsHook, buildEnv, aspellDicts -# Use `lib.collect lib.isDerivation aspellDicts;` to make all dictionaries -# available. +{ lib +, python3 +, fetchFromGitHub +, wrapQtAppsHook +, buildEnv +, aspellDicts + # Use `lib.collect lib.isDerivation aspellDicts;` to make all dictionaries + # available. , enchantAspellDicts ? with aspellDicts; [ en en-computers en-science ] }: -let - version = "7.0.4"; - pythonEnv = python3.withPackages (ps: with ps; [ - pyqt5 docutils pyenchant Markups markdown pygments chardet - ]); -in python3.pkgs.buildPythonApplication { - inherit version; +python3.pkgs.buildPythonApplication rec { pname = "retext"; + version = "7.2.3"; + format = "setuptools"; src = fetchFromGitHub { owner = "retext-project"; repo = "retext"; rev = version; - sha256 = "1zcapywspc9v5zf5cxqkcy019np9n41gmryqixj66zsvd544c6si"; + hash = "sha256-EwaJFODnkZGbqVw1oQrTrx2ME4vRttVW4CMPkWvMtHA="; }; - doCheck = false; + nativeBuildInputs = [ + wrapQtAppsHook + ]; - nativeBuildInputs = [ wrapQtAppsHook ]; - propagatedBuildInputs = [ pythonEnv ]; + propagatedBuildInputs = with python3.pkgs; [ + chardet + docutils + markdown + markups + pyenchant + pygments + pyqt5 + ]; + + postPatch = '' + # Remove wheel check + sed -i -e '31,36d' setup.py + ''; postInstall = '' makeWrapperArgs+=("''${qtWrapperArgs[@]}") @@ -39,10 +54,16 @@ in python3.pkgs.buildPythonApplication { --replace "Icon=ReText-${version}.data/data/share/retext/icons/retext.svg" "Icon=$out/share/retext/icons/retext.svg" ''; + doCheck = false; + + pythonImportsCheck = [ + "ReText" + ]; + meta = with lib; { + description = "Editor for Markdown and reStructuredText"; homepage = "https://github.com/retext-project/retext/"; - description = "Simple but powerful editor for Markdown and reStructuredText"; - license = licenses.gpl3; + license = licenses.gpl2Plus; maintainers = with maintainers; [ klntsky ]; platforms = platforms.unix; }; diff --git a/pkgs/development/python-modules/Markups/default.nix b/pkgs/development/python-modules/Markups/default.nix deleted file mode 100644 index 1fa304f57a8a..000000000000 --- a/pkgs/development/python-modules/Markups/default.nix +++ /dev/null @@ -1,29 +0,0 @@ -{ lib -, buildPythonPackage -, fetchPypi -, python-markdown-math -, markdown -, docutils -, pygments -, pyyaml -}: - -buildPythonPackage rec { - pname = "Markups"; - version = "3.1.3"; - - src = fetchPypi { - inherit pname version; - sha256 = "ab9747a72c1c6457418eb4276c79871977c13a654618e4f12e2a1f0990fbf2fc"; - }; - - checkInputs = [ markdown docutils pygments pyyaml ]; - propagatedBuildInputs = [ python-markdown-math ]; - - meta = { - description = "A wrapper around various text markup languages."; - homepage = "https://github.com/retext-project/pymarkups"; - license = lib.licenses.bsd3; - maintainers = with lib.maintainers; [ klntsky ]; - }; -} diff --git a/pkgs/development/python-modules/markups/default.nix b/pkgs/development/python-modules/markups/default.nix new file mode 100644 index 000000000000..2a0db14d96e7 --- /dev/null +++ b/pkgs/development/python-modules/markups/default.nix @@ -0,0 +1,58 @@ +{ lib +, buildPythonPackage +, docutils +, fetchPypi +, importlib-metadata +, markdown +, pygments +, pytestCheckHook +, python-markdown-math +, pythonOlder +, pyyaml +, textile +}: + +buildPythonPackage rec { + pname = "markups"; + version = "3.1.3"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; + + src = fetchPypi { + pname = "Markups"; + inherit version; + hash = "sha256-q5dHpywcZFdBjrQnbHmHGXfBOmVGGOTxLiofCZD78vw="; + }; + + propagatedBuildInputs = [ + docutils + markdown + pygments + python-markdown-math + pyyaml + textile + ] ++ lib.optionals (pythonOlder "3.8") [ + importlib-metadata + ]; + + checkInputs = [ + pytestCheckHook + ]; + + disabledTests = [ + # AssertionError: '.selector .ch { color: #408080' not found in 'pre... + "test_get_pygments_stylesheet" + ]; + + pythonImportsCheck = [ + "markups" + ]; + + meta = with lib; { + description = "Wrapper around various text markup languages"; + homepage = "https://github.com/retext-project/pymarkups"; + license = licenses.bsd3; + maintainers = with maintainers; [ klntsky ]; + }; +} diff --git a/pkgs/development/python-modules/textile/default.nix b/pkgs/development/python-modules/textile/default.nix new file mode 100644 index 000000000000..a8acf346cd60 --- /dev/null +++ b/pkgs/development/python-modules/textile/default.nix @@ -0,0 +1,48 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, html5lib +, pytestCheckHook +, pythonOlder +, regex +}: + +buildPythonPackage rec { + pname = "textile"; + version = "4.0.2"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = pname; + repo = "python-textile"; + rev = version; + hash = "sha256-WwX7h07Bq8sNsViHwmfhrrqleXacmrIY4ZBBaP2kKnI="; + }; + + propagatedBuildInputs = [ + html5lib + regex + ]; + + checkInputs = [ + pytestCheckHook + ]; + + postPatch = '' + substituteInPlace pytest.ini \ + --replace " --cov=textile --cov-report=html --cov-append --cov-report=term-missing" "" + ''; + + pythonImportsCheck = [ + "textile" + ]; + + meta = with lib; { + description = "MOdule for generating web text"; + homepage = "https://github.com/textile/python-textile"; + license = licenses.bsd3; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-aliases.nix b/pkgs/top-level/python-aliases.nix index b9b3b88f272b..44c5c11ceb92 100644 --- a/pkgs/top-level/python-aliases.nix +++ b/pkgs/top-level/python-aliases.nix @@ -71,6 +71,7 @@ mapAliases ({ jupyter_client = jupyter-client; # added 2021-10-15 Keras = keras; # added 2021-11-25 lammps-cython = throw "lammps-cython no longer builds and is unmaintained"; # added 2021-07-04 + Markups = markups; # added 2022-02-14 MechanicalSoup = mechanicalsoup; # added 2021-06-01 pam = python-pam; # added 2020-09-07. PasteDeploy = pastedeploy; # added 2021-10-07 diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 962cd0f2042e..0c0506fe2b46 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4901,7 +4901,7 @@ in { markupsafe = callPackage ../development/python-modules/markupsafe { }; - Markups = callPackage ../development/python-modules/Markups { }; + markups = callPackage ../development/python-modules/markups { }; marshmallow = callPackage ../development/python-modules/marshmallow { }; @@ -9756,6 +9756,8 @@ in { textfsm = callPackage ../development/python-modules/textfsm { }; + textile = callPackage ../development/python-modules/textile { }; + testing-common-database = callPackage ../development/python-modules/testing-common-database { }; testing-postgresql = callPackage ../development/python-modules/testing-postgresql { };