mirror of
https://github.com/ilyakooo0/nixpkgs.git
synced 2024-12-28 22:32:58 +03:00
parent
a3ad16b9ca
commit
e98b64c2e0
45
pkgs/development/python-modules/pykde4/default.nix
Normal file
45
pkgs/development/python-modules/pykde4/default.nix
Normal file
@ -0,0 +1,45 @@
|
||||
{ pyqt4, openssl_1_0_2
|
||||
, stdenv, callPackage, fetchurl, cmake, automoc4, sip }:
|
||||
|
||||
let
|
||||
kdelibs = callPackage ./kdelibs.nix {
|
||||
openssl = openssl_1_0_2;
|
||||
};
|
||||
sip4_19_3 = sip.overrideAttrs (oldAttrs: rec {
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/pyqt/sip/sip-4.19.3/sip-4.19.3.tar.gz";
|
||||
sha256 = "0x2bghbprwl3az1ni3p87i0bq8r99694la93kg65vi0cz12gh3bl";
|
||||
};
|
||||
});
|
||||
pyqt4_fixed = pyqt4.overrideAttrs (oldAttrs: {
|
||||
propagatedBuildInputs = [ sip4_19_3 ];
|
||||
});
|
||||
in stdenv.mkDerivation rec {
|
||||
version = "4.14.3";
|
||||
pname = "pykde4";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://kde/stable/${version}/src/${pname}-${version}-${version}.tar.xz";
|
||||
sha256 = "1z40gnkyjlv6ds3cmpzvv99394rhmydr6rxx7qj33m83xnsxgfbz";
|
||||
};
|
||||
|
||||
patches = [ ./dlfcn.patch ];
|
||||
|
||||
buildInputs = [
|
||||
kdelibs
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ cmake automoc4 ];
|
||||
|
||||
propagatedBuildInputs = [ pyqt4_fixed ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.linux;
|
||||
description = "Python bindings for KDE";
|
||||
license = with licenses; [ gpl2 lgpl2 ];
|
||||
homepage = https://api.kde.org/pykde-4.3-api/;
|
||||
maintainers = with maintainers; [ gnidorah ];
|
||||
};
|
||||
}
|
13
pkgs/development/python-modules/pykde4/dlfcn.patch
Normal file
13
pkgs/development/python-modules/pykde4/dlfcn.patch
Normal file
@ -0,0 +1,13 @@
|
||||
--- __init__.py.orig 2017-11-02 09:06:48.998054459 +0300
|
||||
+++ ./__init__.py 2017-11-02 09:24:28.089072752 +0300
|
||||
@@ -1,4 +1,8 @@
|
||||
-import sys,DLFCN
|
||||
+import sys
|
||||
+try:
|
||||
+ import DLFCN
|
||||
+except ImportError:
|
||||
+ import os as DLFCN
|
||||
# This is needed to ensure that dynamic_cast and RTTI works inside kdelibs.
|
||||
sys.setdlopenflags(DLFCN.RTLD_NOW|DLFCN.RTLD_GLOBAL)
|
||||
|
||||
\ No newline at end of file
|
38
pkgs/development/python-modules/pykde4/kdelibs.nix
Normal file
38
pkgs/development/python-modules/pykde4/kdelibs.nix
Normal file
@ -0,0 +1,38 @@
|
||||
{
|
||||
stdenv, fetchurl,
|
||||
automoc4, cmake_2_8, libxslt, perl, pkgconfig, shared-mime-info,
|
||||
attica, docbook_xml_dtd_42, docbook_xsl, giflib,
|
||||
libdbusmenu_qt, libjpeg, phonon, qt4, openssl
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "4.14.38";
|
||||
pname = "kdelibs";
|
||||
src = fetchurl {
|
||||
url = "mirror://kde/stable/applications/17.08.3/src/${pname}-${version}.tar.xz";
|
||||
sha256 = "1zn3yb09sd22bm54is0rn98amj0398zybl550dp406419sil7z9p";
|
||||
};
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
automoc4 cmake_2_8 libxslt perl pkgconfig shared-mime-info
|
||||
];
|
||||
buildInputs = [
|
||||
attica giflib libdbusmenu_qt libjpeg openssl
|
||||
];
|
||||
propagatedBuildInputs = [ qt4 phonon ];
|
||||
|
||||
cmakeFlags = [
|
||||
"-DDOCBOOKXML_CURRENTDTD_DIR=${docbook_xml_dtd_42}/xml/dtd/docbook"
|
||||
"-DDOCBOOKXSL_DIR=${docbook_xsl}/xml/xsl/docbook"
|
||||
"-DKJS_FORCE_DISABLE_PCRE=true"
|
||||
"-DWITH_SOLID_UDISKS2=OFF"
|
||||
];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.linux;
|
||||
homepage = http://www.kde.org;
|
||||
license = with licenses; [ gpl2 fdl12 lgpl21 ];
|
||||
};
|
||||
}
|
@ -972,6 +972,11 @@ in {
|
||||
|
||||
pyjwkest = callPackage ../development/python-modules/pyjwkest { };
|
||||
|
||||
pykde4 = callPackage ../development/python-modules/pykde4 {
|
||||
inherit (self) pyqt4;
|
||||
callPackage = pkgs.callPackage;
|
||||
};
|
||||
|
||||
pykdtree = callPackage ../development/python-modules/pykdtree {
|
||||
inherit (pkgs.llvmPackages) openmp;
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user