aboutsummaryrefslogtreecommitdiff
path: root/infra/libkookie/nixpkgs/pkgs/development/python-modules/wxPython/4.1.nix
diff options
context:
space:
mode:
Diffstat (limited to 'infra/libkookie/nixpkgs/pkgs/development/python-modules/wxPython/4.1.nix')
-rw-r--r--infra/libkookie/nixpkgs/pkgs/development/python-modules/wxPython/4.1.nix75
1 files changed, 75 insertions, 0 deletions
diff --git a/infra/libkookie/nixpkgs/pkgs/development/python-modules/wxPython/4.1.nix b/infra/libkookie/nixpkgs/pkgs/development/python-modules/wxPython/4.1.nix
new file mode 100644
index 000000000000..6d07f8b5e281
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/development/python-modules/wxPython/4.1.nix
@@ -0,0 +1,75 @@
+{ lib
+, stdenv
+, fetchPypi
+, buildPythonPackage
+, which
+, pkgconfig
+, python
+, isPy27
+, pyopengl
+, doxygen
+, cairo
+, ncurses
+, pango
+, wxGTK
+}:
+let
+ dynamic-linker = stdenv.cc.bintools.dynamicLinker;
+in
+buildPythonPackage rec {
+ pname = "wxPython";
+ version = "4.1.0";
+ disabled = isPy27;
+
+ src = fetchPypi {
+ inherit pname version;
+ sha256 = "12x4ci5q7qni4rkfiq6lnpn1fk8b0sfc6dck5wyxkj2sfp5pa91f";
+ };
+
+ # https://github.com/NixOS/nixpkgs/issues/75759
+ # https://github.com/wxWidgets/Phoenix/issues/1316
+ doCheck = false;
+
+ nativeBuildInputs = [ which doxygen wxGTK pkgconfig ];
+
+ buildInputs = [
+ wxGTK.gtk
+ ncurses
+ ];
+
+ DOXYGEN = "${doxygen}/bin/doxygen";
+
+ preConfigure = lib.optionalString (!stdenv.isDarwin) ''
+ substituteInPlace wx/lib/wxcairo/wx_pycairo.py \
+ --replace 'cairoLib = None' 'cairoLib = ctypes.CDLL("${cairo}/lib/libcairo.so")'
+ substituteInPlace wx/lib/wxcairo/wx_pycairo.py \
+ --replace '_dlls = dict()' '_dlls = {k: ctypes.CDLL(v) for k, v in [
+ ("gdk", "${wxGTK.gtk}/lib/libgtk-x11-3.0.so"),
+ ("pangocairo", "${pango.out}/lib/libpangocairo-1.0.so"),
+ ("appsvc", None)
+ ]}'
+
+ # https://github.com/wxWidgets/Phoenix/pull/1584
+ # It'll be not needed in next version because https://github.com/wxWidgets/Phoenix/pull/1699
+ substituteInPlace build.py --replace "os.environ['PYTHONPATH'] = phoenixDir()" \
+ "os.environ['PYTHONPATH'] = os.environ['PYTHONPATH'] + os.pathsep + phoenixDir()"
+ '';
+
+ buildPhase = ''
+ ${python.interpreter} build.py -v --use_syswx dox etg --nodoc build_py
+ '';
+
+ installPhase = ''
+ ${python.interpreter} setup.py install --skip-build --prefix=$out
+ wrapPythonPrograms
+ '';
+
+ passthru = { inherit wxGTK; };
+
+ meta = with lib; {
+ description = "Cross platform GUI toolkit for Python, Phoenix version";
+ homepage = "http://wxpython.org/";
+ license = licenses.wxWindows;
+ maintainers = with maintainers; [ tfmoraes ];
+ };
+}