tangled
alpha
login
or
join now
tjh.dev
/
nixpkgs
Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
0
fork
atom
overview
issues
pulls
pipelines
gdbgui: 0.13.0.0 -> 0.13.1.1
Jörg Thalheim
7 years ago
28af9e45
13b5fa18
+32
-355
3 changed files
expand all
collapse all
unified
split
pkgs
development
tools
misc
gdbgui
default.nix
requirements.nix
top-level
all-packages.nix
+31
-18
pkgs/development/tools/misc/gdbgui/default.nix
···
1
-
{ stdenv, python27Packages, gdb, pkgs }:
2
-
let
3
-
deps = import ./requirements.nix { inherit pkgs; };
4
-
in
5
-
python27Packages.buildPythonApplication rec {
0
0
0
0
0
0
0
0
0
0
0
6
pname = "gdbgui";
7
-
version = "0.13.0.0";
8
9
buildInputs = [ gdb ];
10
-
propagatedBuildInputs = builtins.attrValues deps.packages;
0
0
0
0
0
0
0
11
12
-
src = python27Packages.fetchPypi {
13
inherit pname version;
14
-
sha256 = "16a46kabhfqsgsks5l25kpgrvrkdah3h5f5m6ams2z9nzbrxl8bz";
15
};
16
17
postPatch = ''
18
echo ${version} > gdbgui/VERSION.txt
0
0
19
'';
20
21
postInstall = ''
···
23
--prefix PATH : ${stdenv.lib.makeBinPath [ gdb ]}
24
'';
25
26
-
# make /etc/protocols accessible to fix socket.getprotobyname('tcp') in sandbox
27
-
preCheck = stdenv.lib.optionalString stdenv.isLinux ''
28
-
export NIX_REDIRECTS=/etc/protocols=${pkgs.iana-etc}/etc/protocols \
29
-
LD_PRELOAD=${pkgs.libredirect}/lib/libredirect.so
30
-
'';
31
-
32
-
postCheck = stdenv.lib.optionalString stdenv.isLinux ''
33
-
unset NIX_REDIRECTS LD_PRELOAD
34
-
'';
35
36
meta = with stdenv.lib; {
37
description = "A browser-based frontend for GDB";
···
1
+
{ stdenv
2
+
, buildPythonApplication
3
+
, fetchPypi
4
+
, gdb
5
+
, iana-etc
6
+
, libredirect
7
+
, flask
8
+
, flask-socketio
9
+
, flask-compress
10
+
, pygdbmi
11
+
, pygments
12
+
, gevent
13
+
, breakpointHook
14
+
, }:
15
+
16
+
buildPythonApplication rec {
17
pname = "gdbgui";
18
+
version = "0.13.1.1";
19
20
buildInputs = [ gdb ];
21
+
propagatedBuildInputs = [
22
+
flask
23
+
flask-socketio
24
+
flask-compress
25
+
pygdbmi
26
+
pygments
27
+
gevent
28
+
];
29
30
+
src = fetchPypi {
31
inherit pname version;
32
+
sha256 = "1ypxgkxwb443ndyrmsa7zx2hn0d9b3s7n2w49ngfghd3l8k0yvi2";
33
};
34
35
postPatch = ''
36
echo ${version} > gdbgui/VERSION.txt
37
+
# remove upper version bound
38
+
sed -ie 's!, <.*"!"!' setup.py
39
'';
40
41
postInstall = ''
···
43
--prefix PATH : ${stdenv.lib.makeBinPath [ gdb ]}
44
'';
45
46
+
# tests do not work without stdout/stdin
47
+
doCheck = false;
0
0
0
0
0
0
0
48
49
meta = with stdenv.lib; {
50
description = "A browser-based frontend for GDB";
-336
pkgs/development/tools/misc/gdbgui/requirements.nix
···
1
-
# generated using pypi2nix tool (version: 1.8.1)
2
-
# See more at: https://github.com/garbas/pypi2nix
3
-
#
4
-
# COMMAND:
5
-
# pypi2nix -V 2.7 -r requirements.txt
6
-
#
7
-
8
-
{ pkgs ? import <nixpkgs> {}
9
-
}:
10
-
11
-
let
12
-
13
-
inherit (pkgs) makeWrapper;
14
-
inherit (pkgs.stdenv.lib) fix' extends;
15
-
16
-
pythonPackages =
17
-
import "${toString pkgs.path}/pkgs/top-level/python-packages.nix" {
18
-
inherit pkgs;
19
-
inherit (pkgs) stdenv;
20
-
python = pkgs.python27Full;
21
-
# patching pip so it does not try to remove files when running nix-shell
22
-
overrides =
23
-
self: super: {
24
-
bootstrapped-pip = super.bootstrapped-pip.overrideDerivation (old: {
25
-
patchPhase = old.patchPhase + ''
26
-
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
27
-
'';
28
-
});
29
-
};
30
-
};
31
-
32
-
commonBuildInputs = [];
33
-
commonDoCheck = false;
34
-
35
-
withPackages = pkgs':
36
-
let
37
-
pkgs = builtins.removeAttrs pkgs' ["__unfix__"];
38
-
interpreter = pythonPackages.buildPythonPackage {
39
-
name = "python27Full-interpreter";
40
-
buildInputs = [ makeWrapper ] ++ (builtins.attrValues pkgs);
41
-
buildCommand = ''
42
-
mkdir -p $out/bin
43
-
ln -s ${pythonPackages.python.interpreter} $out/bin/${pythonPackages.python.executable}
44
-
for dep in ${builtins.concatStringsSep " " (builtins.attrValues pkgs)}; do
45
-
if [ -d "$dep/bin" ]; then
46
-
for prog in "$dep/bin/"*; do
47
-
if [ -f $prog ]; then
48
-
ln -s $prog $out/bin/`basename $prog`
49
-
fi
50
-
done
51
-
fi
52
-
done
53
-
for prog in "$out/bin/"*; do
54
-
wrapProgram "$prog" --prefix PYTHONPATH : "$PYTHONPATH"
55
-
done
56
-
pushd $out/bin
57
-
ln -s ${pythonPackages.python.executable} python
58
-
ln -s ${pythonPackages.python.executable} python2
59
-
popd
60
-
'';
61
-
passthru.interpreter = pythonPackages.python;
62
-
};
63
-
in {
64
-
__old = pythonPackages;
65
-
inherit interpreter;
66
-
mkDerivation = pythonPackages.buildPythonPackage;
67
-
packages = pkgs;
68
-
overrideDerivation = drv: f:
69
-
pythonPackages.buildPythonPackage (drv.drvAttrs // f drv.drvAttrs // { meta = drv.meta; });
70
-
withPackages = pkgs'':
71
-
withPackages (pkgs // pkgs'');
72
-
};
73
-
74
-
python = withPackages {};
75
-
76
-
generated = self: {
77
-
78
-
"Flask" = python.mkDerivation {
79
-
name = "Flask-0.12.2";
80
-
src = pkgs.fetchurl { url = "https://pypi.python.org/packages/eb/12/1c7bd06fcbd08ba544f25bf2c6612e305a70ea51ca0eda8007344ec3f123/Flask-0.12.2.tar.gz"; sha256 = "49f44461237b69ecd901cc7ce66feea0319b9158743dd27a2899962ab214dac1"; };
81
-
doCheck = commonDoCheck;
82
-
buildInputs = commonBuildInputs;
83
-
propagatedBuildInputs = [
84
-
self."Jinja2"
85
-
self."Werkzeug"
86
-
self."click"
87
-
self."itsdangerous"
88
-
];
89
-
meta = with pkgs.stdenv.lib; {
90
-
homepage = "http://github.com/pallets/flask/";
91
-
license = licenses.bsdOriginal;
92
-
description = "A microframework based on Werkzeug, Jinja2 and good intentions";
93
-
};
94
-
};
95
-
96
-
97
-
98
-
"Flask-Compress" = python.mkDerivation {
99
-
name = "Flask-Compress-1.4.0";
100
-
src = pkgs.fetchurl { url = "https://pypi.python.org/packages/0e/2a/378bd072928f6d92fd8c417d66b00c757dc361c0405a46a0134de6fd323d/Flask-Compress-1.4.0.tar.gz"; sha256 = "468693f4ddd11ac6a41bca4eb5f94b071b763256d54136f77957cfee635badb3"; };
101
-
doCheck = commonDoCheck;
102
-
buildInputs = commonBuildInputs;
103
-
propagatedBuildInputs = [
104
-
self."Flask"
105
-
];
106
-
meta = with pkgs.stdenv.lib; {
107
-
homepage = "https://libwilliam.github.io/flask-compress/";
108
-
license = licenses.mit;
109
-
description = "Compress responses in your Flask app with gzip.";
110
-
};
111
-
};
112
-
113
-
114
-
115
-
"Flask-SocketIO" = python.mkDerivation {
116
-
name = "Flask-SocketIO-2.9.3";
117
-
src = pkgs.fetchurl { url = "https://pypi.python.org/packages/a0/ac/4024b73e071d5a000a998d6f26ba0a090011d5abdc7aa41f2774173c3276/Flask-SocketIO-2.9.3.tar.gz"; sha256 = "df23f790db8529c543bd0b54165215c342cf6955a4a1f605650e759197a46d59"; };
118
-
doCheck = commonDoCheck;
119
-
buildInputs = commonBuildInputs;
120
-
propagatedBuildInputs = [
121
-
self."Flask"
122
-
self."python-socketio"
123
-
];
124
-
meta = with pkgs.stdenv.lib; {
125
-
homepage = "http://github.com/miguelgrinberg/Flask-SocketIO/";
126
-
license = licenses.mit;
127
-
description = "Socket.IO integration for Flask applications";
128
-
};
129
-
};
130
-
131
-
132
-
133
-
"Jinja2" = python.mkDerivation {
134
-
name = "Jinja2-2.10";
135
-
src = pkgs.fetchurl { url = "https://pypi.python.org/packages/56/e6/332789f295cf22308386cf5bbd1f4e00ed11484299c5d7383378cf48ba47/Jinja2-2.10.tar.gz"; sha256 = "f84be1bb0040caca4cea721fcbbbbd61f9be9464ca236387158b0feea01914a4"; };
136
-
doCheck = commonDoCheck;
137
-
buildInputs = commonBuildInputs;
138
-
propagatedBuildInputs = [
139
-
self."MarkupSafe"
140
-
];
141
-
meta = with pkgs.stdenv.lib; {
142
-
homepage = "http://jinja.pocoo.org/";
143
-
license = licenses.bsdOriginal;
144
-
description = "A small but fast and easy to use stand-alone template engine written in pure python.";
145
-
};
146
-
};
147
-
148
-
149
-
150
-
"MarkupSafe" = python.mkDerivation {
151
-
name = "MarkupSafe-1.0";
152
-
src = pkgs.fetchurl { url = "https://pypi.python.org/packages/4d/de/32d741db316d8fdb7680822dd37001ef7a448255de9699ab4bfcbdf4172b/MarkupSafe-1.0.tar.gz"; sha256 = "a6be69091dac236ea9c6bc7d012beab42010fa914c459791d627dad4910eb665"; };
153
-
doCheck = commonDoCheck;
154
-
buildInputs = commonBuildInputs;
155
-
propagatedBuildInputs = [ ];
156
-
meta = with pkgs.stdenv.lib; {
157
-
homepage = "http://github.com/pallets/markupsafe";
158
-
license = licenses.bsdOriginal;
159
-
description = "Implements a XML/HTML/XHTML Markup safe string for Python";
160
-
};
161
-
};
162
-
163
-
164
-
165
-
"Pygments" = python.mkDerivation {
166
-
name = "Pygments-2.2.0";
167
-
src = pkgs.fetchurl { url = "https://pypi.python.org/packages/71/2a/2e4e77803a8bd6408a2903340ac498cb0a2181811af7c9ec92cb70b0308a/Pygments-2.2.0.tar.gz"; sha256 = "dbae1046def0efb574852fab9e90209b23f556367b5a320c0bcb871c77c3e8cc"; };
168
-
doCheck = commonDoCheck;
169
-
buildInputs = commonBuildInputs;
170
-
propagatedBuildInputs = [ ];
171
-
meta = with pkgs.stdenv.lib; {
172
-
homepage = "http://pygments.org/";
173
-
license = licenses.bsdOriginal;
174
-
description = "Pygments is a syntax highlighting package written in Python.";
175
-
};
176
-
};
177
-
178
-
179
-
180
-
"Werkzeug" = python.mkDerivation {
181
-
name = "Werkzeug-0.14.1";
182
-
src = pkgs.fetchurl { url = "https://pypi.python.org/packages/9f/08/a3bb1c045ec602dc680906fc0261c267bed6b3bb4609430aff92c3888ec8/Werkzeug-0.14.1.tar.gz"; sha256 = "c3fd7a7d41976d9f44db327260e263132466836cef6f91512889ed60ad26557c"; };
183
-
doCheck = commonDoCheck;
184
-
buildInputs = commonBuildInputs;
185
-
propagatedBuildInputs = [ ];
186
-
meta = with pkgs.stdenv.lib; {
187
-
homepage = "https://www.palletsprojects.org/p/werkzeug/";
188
-
license = licenses.bsdOriginal;
189
-
description = "The comprehensive WSGI web application library.";
190
-
};
191
-
};
192
-
193
-
194
-
195
-
"click" = python.mkDerivation {
196
-
name = "click-6.7";
197
-
src = pkgs.fetchurl { url = "https://pypi.python.org/packages/95/d9/c3336b6b5711c3ab9d1d3a80f1a3e2afeb9d8c02a7166462f6cc96570897/click-6.7.tar.gz"; sha256 = "f15516df478d5a56180fbf80e68f206010e6d160fc39fa508b65e035fd75130b"; };
198
-
doCheck = commonDoCheck;
199
-
buildInputs = commonBuildInputs;
200
-
propagatedBuildInputs = [ ];
201
-
meta = with pkgs.stdenv.lib; {
202
-
homepage = "http://github.com/mitsuhiko/click";
203
-
license = licenses.bsdOriginal;
204
-
description = "A simple wrapper around optparse for powerful command line utilities.";
205
-
};
206
-
};
207
-
208
-
209
-
210
-
"gevent" = python.mkDerivation {
211
-
name = "gevent-1.2.2";
212
-
src = pkgs.fetchurl { url = "https://pypi.python.org/packages/1b/92/b111f76e54d2be11375b47b213b56687214f258fd9dae703546d30b837be/gevent-1.2.2.tar.gz"; sha256 = "4791c8ae9c57d6f153354736e1ccab1e2baf6c8d9ae5a77a9ac90f41e2966b2d"; };
213
-
doCheck = commonDoCheck;
214
-
buildInputs = commonBuildInputs;
215
-
propagatedBuildInputs = [
216
-
self."greenlet"
217
-
];
218
-
meta = with pkgs.stdenv.lib; {
219
-
homepage = "http://www.gevent.org/";
220
-
license = licenses.mit;
221
-
description = "Coroutine-based network library";
222
-
};
223
-
};
224
-
225
-
226
-
227
-
"greenlet" = python.mkDerivation {
228
-
name = "greenlet-0.4.12";
229
-
src = pkgs.fetchurl { url = "https://pypi.python.org/packages/be/76/82af375d98724054b7e273b5d9369346937324f9bcc20980b45b068ef0b0/greenlet-0.4.12.tar.gz"; sha256 = "e4c99c6010a5d153d481fdaf63b8a0782825c0721506d880403a3b9b82ae347e"; };
230
-
doCheck = commonDoCheck;
231
-
buildInputs = commonBuildInputs;
232
-
propagatedBuildInputs = [ ];
233
-
meta = with pkgs.stdenv.lib; {
234
-
homepage = "https://github.com/python-greenlet/greenlet";
235
-
license = licenses.mit;
236
-
description = "Lightweight in-process concurrent programming";
237
-
};
238
-
};
239
-
240
-
241
-
242
-
"itsdangerous" = python.mkDerivation {
243
-
name = "itsdangerous-0.24";
244
-
src = pkgs.fetchurl { url = "https://pypi.python.org/packages/dc/b4/a60bcdba945c00f6d608d8975131ab3f25b22f2bcfe1dab221165194b2d4/itsdangerous-0.24.tar.gz"; sha256 = "cbb3fcf8d3e33df861709ecaf89d9e6629cff0a217bc2848f1b41cd30d360519"; };
245
-
doCheck = commonDoCheck;
246
-
buildInputs = commonBuildInputs;
247
-
propagatedBuildInputs = [ ];
248
-
meta = with pkgs.stdenv.lib; {
249
-
homepage = "http://github.com/mitsuhiko/itsdangerous";
250
-
license = licenses.bsdOriginal;
251
-
description = "Various helpers to pass trusted data to untrusted environments and back.";
252
-
};
253
-
};
254
-
255
-
256
-
257
-
"pygdbmi" = python.mkDerivation {
258
-
name = "pygdbmi-0.8.2.0";
259
-
src = pkgs.fetchurl { url = "https://pypi.python.org/packages/4e/34/a8c86d85e0d3d8df2c289657a55c19408dbdbf0b1468859e7f1a745ae8ff/pygdbmi-0.8.2.0.tar.gz"; sha256 = "47cece65808ca42edf6966ac48e2aedca7ae1c675c4d2f0d001c7f3a7fa245fe"; };
260
-
doCheck = commonDoCheck;
261
-
buildInputs = commonBuildInputs;
262
-
propagatedBuildInputs = [ ];
263
-
meta = with pkgs.stdenv.lib; {
264
-
homepage = "https://github.com/cs01/pygdbmi";
265
-
license = licenses.mit;
266
-
description = "Parse gdb machine interface output with Python";
267
-
};
268
-
};
269
-
270
-
271
-
272
-
"python-engineio" = python.mkDerivation {
273
-
name = "python-engineio-2.0.2";
274
-
src = pkgs.fetchurl { url = "https://pypi.python.org/packages/e5/91/f6fd80298e68b4ca22a1a9cc3091116e2fef22fd8fb017ad9e5c6ec6ddcc/python-engineio-2.0.2.tar.gz"; sha256 = "46c710a72c3b2a8511b0d7963c46e200010f8ea3eb0721ce15603d0f23e993c4"; };
275
-
doCheck = commonDoCheck;
276
-
buildInputs = commonBuildInputs;
277
-
propagatedBuildInputs = [
278
-
self."six"
279
-
];
280
-
meta = with pkgs.stdenv.lib; {
281
-
homepage = "http://github.com/miguelgrinberg/python-engineio/";
282
-
license = licenses.mit;
283
-
description = "Engine.IO server";
284
-
};
285
-
};
286
-
287
-
288
-
289
-
"python-socketio" = python.mkDerivation {
290
-
name = "python-socketio-1.8.4";
291
-
src = pkgs.fetchurl { url = "https://pypi.python.org/packages/58/a9/52af6a7ad0805977afc838ed394f8d26d078ef61e8c1bdd632801c58ef3a/python-socketio-1.8.4.tar.gz"; sha256 = "13807ce17e85371d15b31295a43b1fac1c0dba1eb5fc233353a3efd53aa122cc"; };
292
-
doCheck = commonDoCheck;
293
-
buildInputs = commonBuildInputs;
294
-
propagatedBuildInputs = [
295
-
self."python-engineio"
296
-
self."six"
297
-
];
298
-
meta = with pkgs.stdenv.lib; {
299
-
homepage = "http://github.com/miguelgrinberg/python-socketio/";
300
-
license = licenses.mit;
301
-
description = "Socket.IO server";
302
-
};
303
-
};
304
-
305
-
306
-
307
-
"six" = python.mkDerivation {
308
-
name = "six-1.11.0";
309
-
src = pkgs.fetchurl { url = "https://pypi.python.org/packages/16/d8/bc6316cf98419719bd59c91742194c111b6f2e85abac88e496adefaf7afe/six-1.11.0.tar.gz"; sha256 = "70e8a77beed4562e7f14fe23a786b54f6296e34344c23bc42f07b15018ff98e9"; };
310
-
doCheck = commonDoCheck;
311
-
buildInputs = commonBuildInputs;
312
-
propagatedBuildInputs = [ ];
313
-
meta = with pkgs.stdenv.lib; {
314
-
homepage = "http://pypi.python.org/pypi/six/";
315
-
license = licenses.mit;
316
-
description = "Python 2 and 3 compatibility utilities";
317
-
};
318
-
};
319
-
320
-
};
321
-
localOverridesFile = ./requirements_override.nix;
322
-
overrides = import localOverridesFile { inherit pkgs python; };
323
-
commonOverrides = [
324
-
325
-
];
326
-
allOverrides =
327
-
(if (builtins.pathExists localOverridesFile)
328
-
then [overrides] else [] ) ++ commonOverrides;
329
-
330
-
in python.withPackages
331
-
(fix' (pkgs.lib.fold
332
-
extends
333
-
generated
334
-
allOverrides
335
-
)
336
-
)
···
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
+1
-1
pkgs/top-level/all-packages.nix
···
8522
8523
gede = libsForQt59.callPackage ../development/tools/misc/gede { };
8524
8525
-
gdbgui = callPackage ../development/tools/misc/gdbgui { };
8526
8527
pmd = callPackage ../development/tools/analysis/pmd { };
8528
···
8522
8523
gede = libsForQt59.callPackage ../development/tools/misc/gede { };
8524
8525
+
gdbgui = python3Packages.callPackage ../development/tools/misc/gdbgui { };
8526
8527
pmd = callPackage ../development/tools/analysis/pmd { };
8528