From 28af9e45b05f082d1a65e793ebd8ca2210121c9c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Sat, 1 Dec 2018 10:53:40 +0000 Subject: [PATCH] gdbgui: 0.13.0.0 -> 0.13.1.1 --- .../development/tools/misc/gdbgui/default.nix | 49 ++- .../tools/misc/gdbgui/requirements.nix | 336 ------------------ pkgs/top-level/all-packages.nix | 2 +- 3 files changed, 32 insertions(+), 355 deletions(-) delete mode 100644 pkgs/development/tools/misc/gdbgui/requirements.nix diff --git a/pkgs/development/tools/misc/gdbgui/default.nix b/pkgs/development/tools/misc/gdbgui/default.nix index 29bf92d2b6e5..36e83564346b 100644 --- a/pkgs/development/tools/misc/gdbgui/default.nix +++ b/pkgs/development/tools/misc/gdbgui/default.nix @@ -1,21 +1,41 @@ -{ stdenv, python27Packages, gdb, pkgs }: -let - deps = import ./requirements.nix { inherit pkgs; }; -in -python27Packages.buildPythonApplication rec { +{ stdenv +, buildPythonApplication +, fetchPypi +, gdb +, iana-etc +, libredirect +, flask +, flask-socketio +, flask-compress +, pygdbmi +, pygments +, gevent +, breakpointHook +, }: + +buildPythonApplication rec { pname = "gdbgui"; - version = "0.13.0.0"; + version = "0.13.1.1"; buildInputs = [ gdb ]; - propagatedBuildInputs = builtins.attrValues deps.packages; + propagatedBuildInputs = [ + flask + flask-socketio + flask-compress + pygdbmi + pygments + gevent + ]; - src = python27Packages.fetchPypi { + src = fetchPypi { inherit pname version; - sha256 = "16a46kabhfqsgsks5l25kpgrvrkdah3h5f5m6ams2z9nzbrxl8bz"; + sha256 = "1ypxgkxwb443ndyrmsa7zx2hn0d9b3s7n2w49ngfghd3l8k0yvi2"; }; postPatch = '' echo ${version} > gdbgui/VERSION.txt + # remove upper version bound + sed -ie 's!, <.*"!"!' setup.py ''; postInstall = '' @@ -23,15 +43,8 @@ python27Packages.buildPythonApplication rec { --prefix PATH : ${stdenv.lib.makeBinPath [ gdb ]} ''; - # make /etc/protocols accessible to fix socket.getprotobyname('tcp') in sandbox - preCheck = stdenv.lib.optionalString stdenv.isLinux '' - export NIX_REDIRECTS=/etc/protocols=${pkgs.iana-etc}/etc/protocols \ - LD_PRELOAD=${pkgs.libredirect}/lib/libredirect.so - ''; - - postCheck = stdenv.lib.optionalString stdenv.isLinux '' - unset NIX_REDIRECTS LD_PRELOAD - ''; + # tests do not work without stdout/stdin + doCheck = false; meta = with stdenv.lib; { description = "A browser-based frontend for GDB"; diff --git a/pkgs/development/tools/misc/gdbgui/requirements.nix b/pkgs/development/tools/misc/gdbgui/requirements.nix deleted file mode 100644 index 273f9db0c399..000000000000 --- a/pkgs/development/tools/misc/gdbgui/requirements.nix +++ /dev/null @@ -1,336 +0,0 @@ -# generated using pypi2nix tool (version: 1.8.1) -# See more at: https://github.com/garbas/pypi2nix -# -# COMMAND: -# pypi2nix -V 2.7 -r requirements.txt -# - -{ pkgs ? import {} -}: - -let - - inherit (pkgs) makeWrapper; - inherit (pkgs.stdenv.lib) fix' extends; - - pythonPackages = - import "${toString pkgs.path}/pkgs/top-level/python-packages.nix" { - inherit pkgs; - inherit (pkgs) stdenv; - python = pkgs.python27Full; - # patching pip so it does not try to remove files when running nix-shell - overrides = - self: super: { - bootstrapped-pip = super.bootstrapped-pip.overrideDerivation (old: { - patchPhase = old.patchPhase + '' - sed -i -e "s|paths_to_remove.remove(auto_confirm)|#paths_to_remove.remove(auto_confirm)|" -e "s|self.uninstalled = paths_to_remove|#self.uninstalled = paths_to_remove|" $out/${pkgs.python35.sitePackages}/pip/req/req_install.py - ''; - }); - }; - }; - - commonBuildInputs = []; - commonDoCheck = false; - - withPackages = pkgs': - let - pkgs = builtins.removeAttrs pkgs' ["__unfix__"]; - interpreter = pythonPackages.buildPythonPackage { - name = "python27Full-interpreter"; - buildInputs = [ makeWrapper ] ++ (builtins.attrValues pkgs); - buildCommand = '' - mkdir -p $out/bin - ln -s ${pythonPackages.python.interpreter} $out/bin/${pythonPackages.python.executable} - for dep in ${builtins.concatStringsSep " " (builtins.attrValues pkgs)}; do - if [ -d "$dep/bin" ]; then - for prog in "$dep/bin/"*; do - if [ -f $prog ]; then - ln -s $prog $out/bin/`basename $prog` - fi - done - fi - done - for prog in "$out/bin/"*; do - wrapProgram "$prog" --prefix PYTHONPATH : "$PYTHONPATH" - done - pushd $out/bin - ln -s ${pythonPackages.python.executable} python - ln -s ${pythonPackages.python.executable} python2 - popd - ''; - passthru.interpreter = pythonPackages.python; - }; - in { - __old = pythonPackages; - inherit interpreter; - mkDerivation = pythonPackages.buildPythonPackage; - packages = pkgs; - overrideDerivation = drv: f: - pythonPackages.buildPythonPackage (drv.drvAttrs // f drv.drvAttrs // { meta = drv.meta; }); - withPackages = pkgs'': - withPackages (pkgs // pkgs''); - }; - - python = withPackages {}; - - generated = self: { - - "Flask" = python.mkDerivation { - name = "Flask-0.12.2"; - src = pkgs.fetchurl { url = "https://pypi.python.org/packages/eb/12/1c7bd06fcbd08ba544f25bf2c6612e305a70ea51ca0eda8007344ec3f123/Flask-0.12.2.tar.gz"; sha256 = "49f44461237b69ecd901cc7ce66feea0319b9158743dd27a2899962ab214dac1"; }; - doCheck = commonDoCheck; - buildInputs = commonBuildInputs; - propagatedBuildInputs = [ - self."Jinja2" - self."Werkzeug" - self."click" - self."itsdangerous" - ]; - meta = with pkgs.stdenv.lib; { - homepage = "http://github.com/pallets/flask/"; - license = licenses.bsdOriginal; - description = "A microframework based on Werkzeug, Jinja2 and good intentions"; - }; - }; - - - - "Flask-Compress" = python.mkDerivation { - name = "Flask-Compress-1.4.0"; - src = pkgs.fetchurl { url = "https://pypi.python.org/packages/0e/2a/378bd072928f6d92fd8c417d66b00c757dc361c0405a46a0134de6fd323d/Flask-Compress-1.4.0.tar.gz"; sha256 = "468693f4ddd11ac6a41bca4eb5f94b071b763256d54136f77957cfee635badb3"; }; - doCheck = commonDoCheck; - buildInputs = commonBuildInputs; - propagatedBuildInputs = [ - self."Flask" - ]; - meta = with pkgs.stdenv.lib; { - homepage = "https://libwilliam.github.io/flask-compress/"; - license = licenses.mit; - description = "Compress responses in your Flask app with gzip."; - }; - }; - - - - "Flask-SocketIO" = python.mkDerivation { - name = "Flask-SocketIO-2.9.3"; - src = pkgs.fetchurl { url = "https://pypi.python.org/packages/a0/ac/4024b73e071d5a000a998d6f26ba0a090011d5abdc7aa41f2774173c3276/Flask-SocketIO-2.9.3.tar.gz"; sha256 = "df23f790db8529c543bd0b54165215c342cf6955a4a1f605650e759197a46d59"; }; - doCheck = commonDoCheck; - buildInputs = commonBuildInputs; - propagatedBuildInputs = [ - self."Flask" - self."python-socketio" - ]; - meta = with pkgs.stdenv.lib; { - homepage = "http://github.com/miguelgrinberg/Flask-SocketIO/"; - license = licenses.mit; - description = "Socket.IO integration for Flask applications"; - }; - }; - - - - "Jinja2" = python.mkDerivation { - name = "Jinja2-2.10"; - src = pkgs.fetchurl { url = "https://pypi.python.org/packages/56/e6/332789f295cf22308386cf5bbd1f4e00ed11484299c5d7383378cf48ba47/Jinja2-2.10.tar.gz"; sha256 = "f84be1bb0040caca4cea721fcbbbbd61f9be9464ca236387158b0feea01914a4"; }; - doCheck = commonDoCheck; - buildInputs = commonBuildInputs; - propagatedBuildInputs = [ - self."MarkupSafe" - ]; - meta = with pkgs.stdenv.lib; { - homepage = "http://jinja.pocoo.org/"; - license = licenses.bsdOriginal; - description = "A small but fast and easy to use stand-alone template engine written in pure python."; - }; - }; - - - - "MarkupSafe" = python.mkDerivation { - name = "MarkupSafe-1.0"; - src = pkgs.fetchurl { url = "https://pypi.python.org/packages/4d/de/32d741db316d8fdb7680822dd37001ef7a448255de9699ab4bfcbdf4172b/MarkupSafe-1.0.tar.gz"; sha256 = "a6be69091dac236ea9c6bc7d012beab42010fa914c459791d627dad4910eb665"; }; - doCheck = commonDoCheck; - buildInputs = commonBuildInputs; - propagatedBuildInputs = [ ]; - meta = with pkgs.stdenv.lib; { - homepage = "http://github.com/pallets/markupsafe"; - license = licenses.bsdOriginal; - description = "Implements a XML/HTML/XHTML Markup safe string for Python"; - }; - }; - - - - "Pygments" = python.mkDerivation { - name = "Pygments-2.2.0"; - src = pkgs.fetchurl { url = "https://pypi.python.org/packages/71/2a/2e4e77803a8bd6408a2903340ac498cb0a2181811af7c9ec92cb70b0308a/Pygments-2.2.0.tar.gz"; sha256 = "dbae1046def0efb574852fab9e90209b23f556367b5a320c0bcb871c77c3e8cc"; }; - doCheck = commonDoCheck; - buildInputs = commonBuildInputs; - propagatedBuildInputs = [ ]; - meta = with pkgs.stdenv.lib; { - homepage = "http://pygments.org/"; - license = licenses.bsdOriginal; - description = "Pygments is a syntax highlighting package written in Python."; - }; - }; - - - - "Werkzeug" = python.mkDerivation { - name = "Werkzeug-0.14.1"; - src = pkgs.fetchurl { url = "https://pypi.python.org/packages/9f/08/a3bb1c045ec602dc680906fc0261c267bed6b3bb4609430aff92c3888ec8/Werkzeug-0.14.1.tar.gz"; sha256 = "c3fd7a7d41976d9f44db327260e263132466836cef6f91512889ed60ad26557c"; }; - doCheck = commonDoCheck; - buildInputs = commonBuildInputs; - propagatedBuildInputs = [ ]; - meta = with pkgs.stdenv.lib; { - homepage = "https://www.palletsprojects.org/p/werkzeug/"; - license = licenses.bsdOriginal; - description = "The comprehensive WSGI web application library."; - }; - }; - - - - "click" = python.mkDerivation { - name = "click-6.7"; - src = pkgs.fetchurl { url = "https://pypi.python.org/packages/95/d9/c3336b6b5711c3ab9d1d3a80f1a3e2afeb9d8c02a7166462f6cc96570897/click-6.7.tar.gz"; sha256 = "f15516df478d5a56180fbf80e68f206010e6d160fc39fa508b65e035fd75130b"; }; - doCheck = commonDoCheck; - buildInputs = commonBuildInputs; - propagatedBuildInputs = [ ]; - meta = with pkgs.stdenv.lib; { - homepage = "http://github.com/mitsuhiko/click"; - license = licenses.bsdOriginal; - description = "A simple wrapper around optparse for powerful command line utilities."; - }; - }; - - - - "gevent" = python.mkDerivation { - name = "gevent-1.2.2"; - src = pkgs.fetchurl { url = "https://pypi.python.org/packages/1b/92/b111f76e54d2be11375b47b213b56687214f258fd9dae703546d30b837be/gevent-1.2.2.tar.gz"; sha256 = "4791c8ae9c57d6f153354736e1ccab1e2baf6c8d9ae5a77a9ac90f41e2966b2d"; }; - doCheck = commonDoCheck; - buildInputs = commonBuildInputs; - propagatedBuildInputs = [ - self."greenlet" - ]; - meta = with pkgs.stdenv.lib; { - homepage = "http://www.gevent.org/"; - license = licenses.mit; - description = "Coroutine-based network library"; - }; - }; - - - - "greenlet" = python.mkDerivation { - name = "greenlet-0.4.12"; - src = pkgs.fetchurl { url = "https://pypi.python.org/packages/be/76/82af375d98724054b7e273b5d9369346937324f9bcc20980b45b068ef0b0/greenlet-0.4.12.tar.gz"; sha256 = "e4c99c6010a5d153d481fdaf63b8a0782825c0721506d880403a3b9b82ae347e"; }; - doCheck = commonDoCheck; - buildInputs = commonBuildInputs; - propagatedBuildInputs = [ ]; - meta = with pkgs.stdenv.lib; { - homepage = "https://github.com/python-greenlet/greenlet"; - license = licenses.mit; - description = "Lightweight in-process concurrent programming"; - }; - }; - - - - "itsdangerous" = python.mkDerivation { - name = "itsdangerous-0.24"; - src = pkgs.fetchurl { url = "https://pypi.python.org/packages/dc/b4/a60bcdba945c00f6d608d8975131ab3f25b22f2bcfe1dab221165194b2d4/itsdangerous-0.24.tar.gz"; sha256 = "cbb3fcf8d3e33df861709ecaf89d9e6629cff0a217bc2848f1b41cd30d360519"; }; - doCheck = commonDoCheck; - buildInputs = commonBuildInputs; - propagatedBuildInputs = [ ]; - meta = with pkgs.stdenv.lib; { - homepage = "http://github.com/mitsuhiko/itsdangerous"; - license = licenses.bsdOriginal; - description = "Various helpers to pass trusted data to untrusted environments and back."; - }; - }; - - - - "pygdbmi" = python.mkDerivation { - name = "pygdbmi-0.8.2.0"; - src = pkgs.fetchurl { url = "https://pypi.python.org/packages/4e/34/a8c86d85e0d3d8df2c289657a55c19408dbdbf0b1468859e7f1a745ae8ff/pygdbmi-0.8.2.0.tar.gz"; sha256 = "47cece65808ca42edf6966ac48e2aedca7ae1c675c4d2f0d001c7f3a7fa245fe"; }; - doCheck = commonDoCheck; - buildInputs = commonBuildInputs; - propagatedBuildInputs = [ ]; - meta = with pkgs.stdenv.lib; { - homepage = "https://github.com/cs01/pygdbmi"; - license = licenses.mit; - description = "Parse gdb machine interface output with Python"; - }; - }; - - - - "python-engineio" = python.mkDerivation { - name = "python-engineio-2.0.2"; - src = pkgs.fetchurl { url = "https://pypi.python.org/packages/e5/91/f6fd80298e68b4ca22a1a9cc3091116e2fef22fd8fb017ad9e5c6ec6ddcc/python-engineio-2.0.2.tar.gz"; sha256 = "46c710a72c3b2a8511b0d7963c46e200010f8ea3eb0721ce15603d0f23e993c4"; }; - doCheck = commonDoCheck; - buildInputs = commonBuildInputs; - propagatedBuildInputs = [ - self."six" - ]; - meta = with pkgs.stdenv.lib; { - homepage = "http://github.com/miguelgrinberg/python-engineio/"; - license = licenses.mit; - description = "Engine.IO server"; - }; - }; - - - - "python-socketio" = python.mkDerivation { - name = "python-socketio-1.8.4"; - src = pkgs.fetchurl { url = "https://pypi.python.org/packages/58/a9/52af6a7ad0805977afc838ed394f8d26d078ef61e8c1bdd632801c58ef3a/python-socketio-1.8.4.tar.gz"; sha256 = "13807ce17e85371d15b31295a43b1fac1c0dba1eb5fc233353a3efd53aa122cc"; }; - doCheck = commonDoCheck; - buildInputs = commonBuildInputs; - propagatedBuildInputs = [ - self."python-engineio" - self."six" - ]; - meta = with pkgs.stdenv.lib; { - homepage = "http://github.com/miguelgrinberg/python-socketio/"; - license = licenses.mit; - description = "Socket.IO server"; - }; - }; - - - - "six" = python.mkDerivation { - name = "six-1.11.0"; - src = pkgs.fetchurl { url = "https://pypi.python.org/packages/16/d8/bc6316cf98419719bd59c91742194c111b6f2e85abac88e496adefaf7afe/six-1.11.0.tar.gz"; sha256 = "70e8a77beed4562e7f14fe23a786b54f6296e34344c23bc42f07b15018ff98e9"; }; - doCheck = commonDoCheck; - buildInputs = commonBuildInputs; - propagatedBuildInputs = [ ]; - meta = with pkgs.stdenv.lib; { - homepage = "http://pypi.python.org/pypi/six/"; - license = licenses.mit; - description = "Python 2 and 3 compatibility utilities"; - }; - }; - - }; - localOverridesFile = ./requirements_override.nix; - overrides = import localOverridesFile { inherit pkgs python; }; - commonOverrides = [ - - ]; - allOverrides = - (if (builtins.pathExists localOverridesFile) - then [overrides] else [] ) ++ commonOverrides; - -in python.withPackages - (fix' (pkgs.lib.fold - extends - generated - allOverrides - ) - ) \ No newline at end of file diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 65cae31a998e..edd9c330d787 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8522,7 +8522,7 @@ with pkgs; gede = libsForQt59.callPackage ../development/tools/misc/gede { }; - gdbgui = callPackage ../development/tools/misc/gdbgui { }; + gdbgui = python3Packages.callPackage ../development/tools/misc/gdbgui { }; pmd = callPackage ../development/tools/analysis/pmd { };