From 5243106e796d8c90154fe7946d7cc2da3c18fa8c Mon Sep 17 00:00:00 2001 From: Phillip Seeber Date: Fri, 2 Aug 2024 11:34:49 +0200 Subject: [PATCH] openbabel: fix python 3.12 compatibility --- .../libraries/openbabel/default.nix | 33 ++++++++++++++----- 1 file changed, 24 insertions(+), 9 deletions(-) diff --git a/pkgs/development/libraries/openbabel/default.nix b/pkgs/development/libraries/openbabel/default.nix index 0030b1cfa171..259fc8ce6903 100644 --- a/pkgs/development/libraries/openbabel/default.nix +++ b/pkgs/development/libraries/openbabel/default.nix @@ -1,4 +1,18 @@ -{ stdenv, lib, fetchFromGitHub, cmake, perl, zlib, libxml2, eigen, python, cairo, pcre, pkg-config, swig, rapidjson }: +{ stdenv +, lib +, fetchFromGitHub +, cmake +, perl +, zlib +, libxml2 +, eigen +, python +, cairo +, pcre +, pkg-config +, swig +, rapidjson +}: stdenv.mkDerivation rec { pname = "openbabel"; @@ -19,18 +33,19 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ cmake pkg-config ]; - pythonMajorMinor = "${python.sourceVersion.major}.${python.sourceVersion.minor}"; - - cmakeFlags = [ - "-DRUN_SWIG=ON" - "-DPYTHON_BINDINGS=ON" - ]; + preConfigure = '' + cmakeFlagsArray+=( + "-DRUN_SWIG=ON" + "-DPYTHON_BINDINGS=ON" + "-DPYTHON_INSTDIR=$out/${python.sitePackages}" + ) + ''; # Setuptools only accepts PEP 440 version strings. The "unstable" identifier # can not be used. Instead we pretend to be the 3.2 beta release. postFixup = '' - cat < $out/lib/python$pythonMajorMinor/site-packages/setup.py - from distutils.core import setup + cat << EOF > $out/${python.sitePackages}/setup.py + from setuptools import setup setup( name = 'pyopenbabel',