From 83a742d7faef1e7f2692749da29fd4da3cb6f7c4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Fri, 5 Apr 2019 20:23:10 -0300 Subject: [PATCH] deepin.qcef: init at 1.1.4.6 --- pkgs/desktops/deepin/default.nix | 1 + pkgs/desktops/deepin/qcef/default.nix | 104 ++++++++++++++++++++++++++ 2 files changed, 105 insertions(+) create mode 100644 pkgs/desktops/deepin/qcef/default.nix diff --git a/pkgs/desktops/deepin/default.nix b/pkgs/desktops/deepin/default.nix index d864fd77389e..6a6f621ff33d 100644 --- a/pkgs/desktops/deepin/default.nix +++ b/pkgs/desktops/deepin/default.nix @@ -44,6 +44,7 @@ let go-dbus-generator = callPackage ./go-dbus-generator { }; go-gir-generator = callPackage ./go-gir-generator { }; go-lib = callPackage ./go-lib { }; + qcef = callPackage ./qcef { }; qt5dxcb-plugin = callPackage ./qt5dxcb-plugin { }; qt5integration = callPackage ./qt5integration { }; diff --git a/pkgs/desktops/deepin/qcef/default.nix b/pkgs/desktops/deepin/qcef/default.nix new file mode 100644 index 000000000000..18d64c5645ca --- /dev/null +++ b/pkgs/desktops/deepin/qcef/default.nix @@ -0,0 +1,104 @@ +{ stdenv, fetchFromGitHub, pkgconfig, cmake, qtbase, qttools, + qtwebchannel, qtx11extras, dtkcore, dtkwidget, qt5integration, + libXScrnSaver, gnome2, nss, nspr, alsaLib, atk, cairo, cups, dbus, + expat, fontconfig, gdk_pixbuf, glib, gtk2, libX11, libXcomposite, + libXcursor, libXdamage, libXext, libXfixes, libXi, libXrandr, + libXrender, libXtst, libxcb, pango, pulseaudio, xorg, deepin }: + +let + rpahtLibraries = [ + stdenv.cc.cc.lib # libstdc++.so.6 + alsaLib + atk + cairo + cups + dbus + expat + fontconfig + gdk_pixbuf + glib + gnome2.GConf + gtk2 + libxcb + nspr + nss + pango + pulseaudio + xorg.libX11 + xorg.libXScrnSaver + xorg.libXcomposite + xorg.libXcursor + xorg.libXdamage + xorg.libXext + xorg.libXfixes + xorg.libXi + xorg.libXrandr + xorg.libXrender + xorg.libXtst + ]; + libPath = stdenv.lib.makeLibraryPath rpahtLibraries; +in + +stdenv.mkDerivation rec { + name = "${pname}-${version}"; + pname = "qcef"; + version = "1.1.4.6"; + + srcs = [ + (fetchFromGitHub { + owner = "linuxdeepin"; + repo = pname; + rev = version; + sha256 = "06909sd0gf7n4hw6p4j96apjym219zabflgpwjafm7v00bgnwxxs"; + name = pname; + }) + (fetchFromGitHub { + owner = "linuxdeepin"; + repo = "cef-binary"; + rev = "059a0c9cef4e289a50dc7a2f4c91fe69db95035e"; + sha256 = "1h7cq63n94y2a6fprq4g63admh49rcci7avl5z9kdimkhqb2jb84"; + name = "cef-binary"; + }) + ]; + + sourceRoot = pname; + + nativeBuildInputs = [ + pkgconfig + cmake + qttools + deepin.setupHook + ]; + + buildInputs = [ + qtbase + qtwebchannel + qtx11extras + ] ++ rpahtLibraries; + + postUnpack = '' + rmdir ${pname}/cef + ln -s ../cef-binary ${pname}/cef + ''; + + postPatch = '' + searchHardCodedPaths + fixPath $out /usr src/core/qcef_global_settings.{h,cpp} + sed '/COMMAND rm -rf Release Resources/a COMMAND ldd qcef/libcef.so' -i src/CMakeLists.txt + sed '/COMMAND rm -rf Release Resources/a COMMAND patchelf --set-rpath ${libPath} qcef/libcef.so' -i src/CMakeLists.txt + ''; + + postFixup = '' + searchHardCodedPaths $out + ''; + + passthru.updateScript = deepin.updateScript { inherit name; }; + + meta = with stdenv.lib; { + description = "Qt5 binding of Chromium Embedded Framework"; + homepage = https://github.com/linuxdeepin/qcef; + license = licenses.lgpl3; + platforms = platforms.linux; + maintainers = with maintainers; [ romildo ]; + }; +}