summary refs log tree commit diff
diff options
context:
space:
mode:
authorThomas Tuegel <ttuegel@secure.mailbox.org>2018-03-28 08:24:43 -0500
committerGitHub <noreply@github.com>2018-03-28 08:24:43 -0500
commitc7d7abc51e5f9b9c7481a83c47b37508bf08b05b (patch)
treed314f05dbc3fb313cfd7141c88492bc5e0eba7ec
parent93a77eee1aa472a9a85a0546fc24681177716f5b (diff)
parent4398a9e9b9002cc27e4a07e0e918c2fd8df58270 (diff)
downloadnixpkgs-c7d7abc51e5f9b9c7481a83c47b37508bf08b05b.tar
nixpkgs-c7d7abc51e5f9b9c7481a83c47b37508bf08b05b.tar.gz
nixpkgs-c7d7abc51e5f9b9c7481a83c47b37508bf08b05b.tar.bz2
nixpkgs-c7d7abc51e5f9b9c7481a83c47b37508bf08b05b.tar.lz
nixpkgs-c7d7abc51e5f9b9c7481a83c47b37508bf08b05b.tar.xz
nixpkgs-c7d7abc51e5f9b9c7481a83c47b37508bf08b05b.tar.zst
nixpkgs-c7d7abc51e5f9b9c7481a83c47b37508bf08b05b.zip
Merge pull request #36320 from romildo/new.gsettings-qt
gsettings-qt: init at 0.1.20170824
-rw-r--r--pkgs/development/libraries/gsettings-qt/default.nix58
-rw-r--r--pkgs/top-level/all-packages.nix2
2 files changed, 60 insertions, 0 deletions
diff --git a/pkgs/development/libraries/gsettings-qt/default.nix b/pkgs/development/libraries/gsettings-qt/default.nix
new file mode 100644
index 00000000000..9e893932a64
--- /dev/null
+++ b/pkgs/development/libraries/gsettings-qt/default.nix
@@ -0,0 +1,58 @@
+{ stdenv, fetchbzr, pkgconfig, qmake, qtbase, qtdeclarative, glib, gobjectIntrospection }:
+
+stdenv.mkDerivation rec {
+  name = "gsettings-qt-${version}";
+  version = "0.1.20170824";
+
+  src = fetchbzr {
+    url = http://bazaar.launchpad.net/~system-settings-touch/gsettings-qt/trunk;
+    rev = "85";
+    sha256 = "1kcw0fgdyndx9c0dyha11wkj0gi05spdc1adf1609mrinbb4rnyi";
+  };
+
+  nativeBuildInputs = [
+    pkgconfig
+    qmake
+    gobjectIntrospection
+  ];
+
+  buildInputs = [
+    glib
+    qtdeclarative
+  ];
+
+  patchPhase = ''
+    # force ordered build of subdirs
+    sed -i -e "\$aCONFIG += ordered" gsettings-qt.pro
+
+    # It seems that there is a bug in qtdeclarative: qmlplugindump fails
+    # because it can not find or load the Qt platform plugin "minimal".
+    # A workaround is to set QT_PLUGIN_PATH and QML2_IMPORT_PATH explicitly.
+    export QT_PLUGIN_PATH=${qtbase.bin}/${qtbase.qtPluginPrefix}
+    export QML2_IMPORT_PATH=${qtdeclarative.bin}/${qtbase.qtQmlPrefix}
+
+    substituteInPlace GSettings/gsettings-qt.pro \
+      --replace '$$[QT_INSTALL_QML]' "$out/$qtQmlPrefix" \
+      --replace '$$[QT_INSTALL_BINS]/qmlplugindump' "qmlplugindump"
+
+    substituteInPlace src/gsettings-qt.pro \
+      --replace '$$[QT_INSTALL_LIBS]' "$out/lib" \
+      --replace '$$[QT_INSTALL_HEADERS]' "$out/include"
+  '';
+
+  preInstall = ''
+    # do not install tests
+    for f in tests/Makefile{,.cpptest}; do
+      substituteInPlace $f \
+        --replace "install: install_target" "install: "
+    done
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Qt/QML bindings for GSettings";
+    homepage = https://launchpad.net/gsettings-qt;
+    license = licenses.lgpl3;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.romildo ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 24fde71909a..ef4e1aafd77 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -9089,6 +9089,8 @@ with pkgs;
 
   grpc = callPackage ../development/libraries/grpc { };
 
+  gsettings-qt = libsForQt5.callPackage ../development/libraries/gsettings-qt { };
+
   gst_all_1 = recurseIntoAttrs(callPackage ../development/libraries/gstreamer {
     callPackage = pkgs.newScope (pkgs // { libav = pkgs.ffmpeg; });
   });