about summary refs log tree commit diff
path: root/nixpkgs/pkgs/applications/editors/molsketch
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/applications/editors/molsketch')
-rw-r--r--nixpkgs/pkgs/applications/editors/molsketch/default.nix6
-rw-r--r--nixpkgs/pkgs/applications/editors/molsketch/openbabel.patch12
2 files changed, 17 insertions, 1 deletions
diff --git a/nixpkgs/pkgs/applications/editors/molsketch/default.nix b/nixpkgs/pkgs/applications/editors/molsketch/default.nix
index 6a656114ff5f..d0c05d27e88c 100644
--- a/nixpkgs/pkgs/applications/editors/molsketch/default.nix
+++ b/nixpkgs/pkgs/applications/editors/molsketch/default.nix
@@ -19,6 +19,10 @@ mkDerivation rec {
     hash = "sha256-Mpx4fHktxqBAkmdwqg2pXvEgvvGUQPbgqxKwXKjhJuQ=";
   };
 
+  patches = [
+    ./openbabel.patch
+  ];
+
   # uses C++17 APIs like std::transform_reduce
   postPatch = ''
     substituteInPlace molsketch/CMakeLists.txt \
@@ -34,7 +38,7 @@ mkDerivation rec {
   '';
 
   postFixup = ''
-    mv $out/lib/molsketch/* $out/lib
+    ln -s $out/lib/molsketch/* $out/lib/.
   '';
 
   nativeBuildInputs = [ cmake pkg-config qttools wrapQtAppsHook ];
diff --git a/nixpkgs/pkgs/applications/editors/molsketch/openbabel.patch b/nixpkgs/pkgs/applications/editors/molsketch/openbabel.patch
new file mode 100644
index 000000000000..80786bbab4dd
--- /dev/null
+++ b/nixpkgs/pkgs/applications/editors/molsketch/openbabel.patch
@@ -0,0 +1,12 @@
+diff --git a/obabeliface/obabeliface.cpp b/obabeliface/obabeliface.cpp
+index 98a9020..a168803 100644
+--- a/obabeliface/obabeliface.cpp
++++ b/obabeliface/obabeliface.cpp
+@@ -196,6 +196,7 @@ namespace Molsketch
+ 
+   // TODO should be const, but OpenBabel iterator methods do not support const
+   bool hasCoordinates(OpenBabel::OBMol &molecule) {
++    using namespace OpenBabel;
+     FOR_ATOMS_OF_MOL(obatom, molecule) {
+       if (obatom->GetVector() != OpenBabel::VZero)
+         return true;