From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp12.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms9.migadu.com with LMTPS id sCGmGbnWFWQnqgAASxT56A (envelope-from ) for ; Sat, 18 Mar 2023 16:20:25 +0100 Received: from aspmx1.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp12.migadu.com with LMTPS id 4J57GbnWFWRkZgEAauVa8A (envelope-from ) for ; Sat, 18 Mar 2023 16:20:25 +0100 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 36E0D314C9 for ; Sat, 18 Mar 2023 16:20:25 +0100 (CET) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pdYLb-0005Pe-IH; Sat, 18 Mar 2023 11:19:55 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pdYLZ-0005PS-Oa for guix-devel@gnu.org; Sat, 18 Mar 2023 11:19:53 -0400 Received: from hera.aquilenet.fr ([185.233.100.1]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pdYLY-0006wt-1J for guix-devel@gnu.org; Sat, 18 Mar 2023 11:19:53 -0400 Received: from localhost (localhost [127.0.0.1]) by hera.aquilenet.fr (Postfix) with ESMTP id EC490CF3; Sat, 18 Mar 2023 16:19:48 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at hera.aquilenet.fr Received: from hera.aquilenet.fr ([127.0.0.1]) by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id KtzxHEWSTsXy; Sat, 18 Mar 2023 16:19:48 +0100 (CET) Received: from jurong (unknown [IPv6:2001:861:c4:f2f0::c64]) by hera.aquilenet.fr (Postfix) with ESMTPSA id 1BEE31E5; Sat, 18 Mar 2023 16:19:48 +0100 (CET) Date: Sat, 18 Mar 2023 16:19:46 +0100 From: Andreas Enge To: guix-devel@gnu.org Subject: PyQt in core-updates Message-ID: MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="EoIkxDJi9HB5ver2" Content-Disposition: inline Received-SPF: pass client-ip=185.233.100.1; envelope-from=andreas@enge.fr; helo=hera.aquilenet.fr X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: guix-devel-bounces+larch=yhetil.org@gnu.org X-Migadu-Country: US X-Migadu-Flow: FLOW_IN ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=none; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org"; dmarc=none ARC-Seal: i=1; s=key1; d=yhetil.org; t=1679152825; a=rsa-sha256; cv=none; b=WQu0DqvrEErALWdPGcG5tddIyoNc11Y6DPNr0tjQgyydAVS7TIfHXGrEcTxI2BZfZTfrHc yjypIAmntYJz4E95woxgjxqB6bBYuh1e24g6wAJRXFxuOUfInnlhoPeTcUZWs8baKpHYFx /wFLZ7xt92iKYZEbJxeBnSRcbilq1wgAaiaGuCNj4p0eAqm6boDzYJHQsf03K/DaBBYtEe ZzHgCAzR0eXwOL9AiWGDxlK3lovi12R156MUoA8qcEF4BIOBNs1AemKQ0iqFQUbo5qFAR5 XUcgAxFibLb8StEoAc0o+PIGOagYvTQAT+sTb2eKwd/GArKGn5tB02citzpz+Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1679152825; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type:list-id:list-help:list-unsubscribe: list-subscribe:list-post; bh=xOqwAA+xIDW75NmHdXO3YsOaPXKVysj3fu7lvp28NeQ=; b=heDIDT388ozDsUgZ6kwshA+5kJydbMtvuOuv9C6X1Qs4RNpHRuqB57PYIZ5JKS6qQgi+i8 bGGWP6rJyzaLvQAcAdTSWJS+Jl5bAZNU+QFeQE+fgnsMomUI15ODDU06THQgi5k3CLl/vW n5MeMHsKOVCSWprLDH8FrXS71orQEnqtdzmGpbFZMxv8eYACrG/X1Ua5BJ/z13foEwCVqm L9vjZjVZsx4gIimiPAdH2kMF8Y4aPImwjq9yjG3UdyPVLoAGUDYQ4ZZ6x4bHOK3bgUV9nJ DU8V5HNnDimYrk8UXBaj8BeXUfnJw6fWMD8B9QXPIQ31LZHbzlZ4Z5Oh2hRQpg== X-Migadu-Spam-Score: -2.55 X-Spam-Score: -2.55 X-Migadu-Queue-Id: 36E0D314C9 X-Migadu-Scanner: scn1.migadu.com Authentication-Results: aspmx1.migadu.com; dkim=none; spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org"; dmarc=none X-TUID: 3tnuuaDLSM+M --EoIkxDJi9HB5ver2 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Hello, the attached patch seems to be necessary to start configuring python-pyqt in core-updates. But then the configure step still fails. The error message of "guix build" is not helpful, but running the configure step in the result of "guix build -K" shows the following: ... The interpreter used by pyuic5 is /gnu/store/82nin1sk01l31p5vpnz9c2ki76qka9b0-python-wrapper-3.10.7/bin/python. Generating the C++ source for the QtCore module... Error: Unable to create the C++ code. A search seems to indicate that sip does not do its job, but the exact same error with this PyQt version does not show up. The error message comes from the function def generate_sip_module_code in configure.py, which creates a command that is run with run_command. Precisely, the command is /gnu/store/zd8nrmc0207l90vscnf7dlswd6z16aas-python-sip-5.5.0/bin/sip5 -w -n PyQt5.sip -t WS_X11 -t Qt_5_15_0 -f -P -o -y QtCore.pyi -c /tmp/guix-build-python-pyqt-5.15.8.drv-2/PyQt5-5.15.8/QtCore -I sip -I /tmp/guix-build-python-pyqt-5.15.8.drv-2/PyQt5-5.15.8/sip /tmp/guix-build-python-pyqt-5.15.8.drv-2/PyQt5-5.15.8/sip/QtCore/QtCoremod.sip If I run it by hand, it prints .sip5-real: /tmp/guix-build-python-pyqt-5.15.8.drv-1/PyQt5-5.15.8/sip/QtCore/QtCoremod.sip:23: syntax error This line 23 is very simple: %Module(name=PyQt5.QtCore, call_super_init=True, default_VirtualErrorHandler=PyQt5, keyword_arguments="Optional", use_limited_api=True, py_ssize_t_clean=True) And anyway, it is part of the source code... There is a version 5.15.9 of PyQt (interestingly enough, not related to a corresponding Qt version), with NEWS stating "Bug fixes", but what I have written above is still valid. At this point, I have to give up for lack of knowledge about sip. Andreas --EoIkxDJi9HB5ver2 Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="0001-gnu-python-pyqt-Set-variable-in-configure-script.patch" >From 82cb67b324e9ef63bb105caae5b778467aedf894 Mon Sep 17 00:00:00 2001 From: Andreas Enge Date: Sat, 18 Mar 2023 15:48:48 +0100 Subject: [PATCH] gnu: python-pyqt: Set variable in configure script. * gnu/packages/patches/pyqt-minimum-sip-version.patch: New file. * gnu/packages/qt.scm (python-pyqt): Add patch. * gnu/local.mk (dist_patch_DATA): Register patch. --- gnu/local.mk | 1 + .../patches/pyqt-minimum-sip-version.patch | 14 ++++++++++++++ gnu/packages/qt.scm | 3 ++- 3 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/pyqt-minimum-sip-version.patch diff --git a/gnu/local.mk b/gnu/local.mk index 43b7e4ceb3..d81f8ee0f8 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1707,6 +1707,7 @@ dist_patch_DATA = \ %D%/packages/patches/pybugz-stty.patch \ %D%/packages/patches/pygpgme-disable-problematic-tests.patch \ %D%/packages/patches/pyqt-configure.patch \ + %D%/packages/patches/pyqt-minimum-sip-version.patch \ %D%/packages/patches/python-2-deterministic-build-info.patch \ %D%/packages/patches/python-2.7-adjust-tests.patch \ %D%/packages/patches/python-2.7-expat-compat.patch \ diff --git a/gnu/packages/patches/pyqt-minimum-sip-version.patch b/gnu/packages/patches/pyqt-minimum-sip-version.patch new file mode 100644 index 0000000000..abcb4113e8 --- /dev/null +++ b/gnu/packages/patches/pyqt-minimum-sip-version.patch @@ -0,0 +1,14 @@ +Set the MinimumSipVersion to something, namely the currently available one. + +diff -u PyQt5-5.15.8.alt/configure.py PyQt5-5.15.8/configure.py +--- PyQt5-5.15.8.alt/configure.py ++++ PyQt5-5.15.8/configure.py +@@ -29,7 +29,7 @@ import sys + + # Initialise the constants. + PYQT_VERSION_STR = "5.15.8" +-SIP_MIN_VERSION = '@MinimumSipVersion@' ++SIP_MIN_VERSION = "5.5.0" + + + class ModuleMetadata: diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index 22a33341bf..45d99c241c 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -3294,7 +3294,8 @@ (define-public python-pyqt (sha256 (base32 "0q53xn1ax2kpfqwxkasby787ryq5a21chmw1p345cp0kp7py71dw")) - (patches (search-patches "pyqt-configure.patch")))) + (patches (search-patches "pyqt-configure.patch" + "pyqt-minimum-sip-version.patch")))) (build-system gnu-build-system) (native-inputs (list qtbase-5)) ; for qmake -- 2.39.2 --EoIkxDJi9HB5ver2--