summary refs log tree commit diff
diff options
context:
space:
mode:
authorJosé Romildo Malaquias <malaquias@gmail.com>2019-04-05 20:23:10 -0300
committerJosé Romildo Malaquias <malaquias@gmail.com>2019-04-07 00:28:31 -0300
commit83a742d7faef1e7f2692749da29fd4da3cb6f7c4 (patch)
tree9098b9c557b7a81cad5255afb3b2bdd730d2d28b
parent09f257d4dc0fa8d474c3fd13b29184fad410c550 (diff)
downloadnixpkgs-83a742d7faef1e7f2692749da29fd4da3cb6f7c4.tar
nixpkgs-83a742d7faef1e7f2692749da29fd4da3cb6f7c4.tar.gz
nixpkgs-83a742d7faef1e7f2692749da29fd4da3cb6f7c4.tar.bz2
nixpkgs-83a742d7faef1e7f2692749da29fd4da3cb6f7c4.tar.lz
nixpkgs-83a742d7faef1e7f2692749da29fd4da3cb6f7c4.tar.xz
nixpkgs-83a742d7faef1e7f2692749da29fd4da3cb6f7c4.tar.zst
nixpkgs-83a742d7faef1e7f2692749da29fd4da3cb6f7c4.zip
deepin.qcef: init at 1.1.4.6
-rw-r--r--pkgs/desktops/deepin/default.nix1
-rw-r--r--pkgs/desktops/deepin/qcef/default.nix104
2 files changed, 105 insertions, 0 deletions
diff --git a/pkgs/desktops/deepin/default.nix b/pkgs/desktops/deepin/default.nix
index d864fd77389..6a6f621ff33 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 00000000000..18d64c5645c
--- /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 ];
+  };
+}