From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp10.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id UJ+yDccMrGKaigAAbAwnHQ (envelope-from ) for ; Fri, 17 Jun 2022 07:10:31 +0200 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp10.migadu.com with LMTPS id qK+lDMcMrGJ1DgEAG6o9tA (envelope-from ) for ; Fri, 17 Jun 2022 07:10:31 +0200 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 A6312982C for ; Fri, 17 Jun 2022 07:10:30 +0200 (CEST) Received: from localhost ([::1]:37358 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1o24FY-0002sE-0F for larch@yhetil.org; Fri, 17 Jun 2022 01:10:29 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:36268) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1o24F9-0002s3-1L for guix-patches@gnu.org; Fri, 17 Jun 2022 01:10:04 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:49618) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1o24F8-0000Kt-PR for guix-patches@gnu.org; Fri, 17 Jun 2022 01:10:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1o24F8-0001R8-Ah for guix-patches@gnu.org; Fri, 17 Jun 2022 01:10:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#55424] [PATCH 081/602] gnu: renpy: Build with Python 3. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 17 Jun 2022 05:10:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 55424 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Liliana Marie Prikler Cc: 55424@debbugs.gnu.org Received: via spool by 55424-submit@debbugs.gnu.org id=B55424.16554425565453 (code B ref 55424); Fri, 17 Jun 2022 05:10:02 +0000 Received: (at 55424) by debbugs.gnu.org; 17 Jun 2022 05:09:16 +0000 Received: from localhost ([127.0.0.1]:43515 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1o24EN-0001Pt-In for submit@debbugs.gnu.org; Fri, 17 Jun 2022 01:09:15 -0400 Received: from mail-qk1-f175.google.com ([209.85.222.175]:43763) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1o24EL-0001Pf-Oh for 55424@debbugs.gnu.org; Fri, 17 Jun 2022 01:09:14 -0400 Received: by mail-qk1-f175.google.com with SMTP id p63so2479331qkd.10 for <55424@debbugs.gnu.org>; Thu, 16 Jun 2022 22:09:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=ECqSXjQP10zfe5KkamJz16+XpenOn/hmiA+j/1auHAo=; b=FfZD8bq+LFv8IfOHmFrauYefMGBoLhblqOVg00qPY30URZupZ7KdqlY3uqcOSYkyNn BdB+TZEM0xGYXp7uZog5sncMb4RaSfka5/4mAYYzXyasrich3x7GUpN0tDtsnL/4lXAV b07TCIyLIXMMAopgNbkP/RpM2CtMEWZhYbMphiKslfOOOq6i/4sy+0cHjK2pL15fbLEw ecIn2vnx+bZ6EGXLUUPuDV/SeCtT1+KfS5JIji5m+mAiYc3Ta74Ei7+xvOA4BiZZDe4h 0guwGgpu9tYHe2LhQD7LSDiYNgPupS3oYb4caFNoM4+VTQhCOJr/Rm9jIKn7XiUK53tp Jk8A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=ECqSXjQP10zfe5KkamJz16+XpenOn/hmiA+j/1auHAo=; b=YOgh5JyMChsuZdH5T7uwo2rg6oWkCJzYXynHeoHIiP3dNGBTQ/3L7H4pBA4lewuJ6V QYZX0qNVjTtnkKyB8IZNzB0LrwRCPsnDWoad9DZGlMVSfm0myiP0Ly42i8lY0XEA9FQA bRDRKddTm3v9vTg1rUIIXC1EayPa0wjrcYW2rDibFgL2haPWNQQ9JNbg7DmXCl+VYznP 3Mu9dwR6zQEX2hv9Mv56HeSGA9Fo/1nWvgop8i5X1vvNuLAr4q4P6trAM/wejybNYXPW J5EDJQTUZqjJWeYbSX5vVb9dBIjxUcwmybv4vGq/Xr5e7X8iARTmBMD6iHBfwISr3Qd1 1Zpg== X-Gm-Message-State: AJIora+eItChaj7mHh+6YgP2fPO7iVdxyd3F9Pr0O293qzcUMUKgLums v3NS7Jj/Ywmm3JY0FjV9nukJzbk8bNlHMA== X-Google-Smtp-Source: AGRyM1tqB43Iqne7Tw8fFZwFPMSjGka7Kps3CQyzGRKB04CJssYdqmy/jyhPVXKoy+s47BNJjfls/g== X-Received: by 2002:a05:620a:29c7:b0:6a7:4252:2607 with SMTP id s7-20020a05620a29c700b006a742522607mr6044475qkp.115.1655442547579; Thu, 16 Jun 2022 22:09:07 -0700 (PDT) Received: from hurd (dsl-10-149-53.b2b2c.ca. [72.10.149.53]) by smtp.gmail.com with ESMTPSA id g10-20020a05620a40ca00b006a791a42693sm3849632qko.133.2022.06.16.22.09.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 16 Jun 2022 22:09:07 -0700 (PDT) From: Maxim Cournoyer References: <20220515044629.6843-1-maxim.cournoyer@gmail.com> <20220515044629.6843-81-maxim.cournoyer@gmail.com> <18da4f053901c49dbaf80f8afc5edb8234d20d5d.camel@gmail.com> <87y1xwbkjh.fsf@gmail.com> <0441bfdec832867cb73469fb1cfdf4bcddfe95fd.camel@gmail.com> <87bkusb8kw.fsf@gmail.com> <210e32db4b99c02c1817dbb5b6979b47b5887399.camel@gmail.com> Date: Fri, 17 Jun 2022 01:09:05 -0400 In-Reply-To: <210e32db4b99c02c1817dbb5b6979b47b5887399.camel@gmail.com> (Liliana Marie Prikler's message of "Fri, 17 Jun 2022 01:39:10 +0200") Message-ID: <871qvnc1vy.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Migadu-Flow: FLOW_IN X-Migadu-To: larch@yhetil.org X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1655442630; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:resent-cc:resent-from:resent-sender: resent-message-id:in-reply-to:in-reply-to:references:references: list-id:list-help:list-unsubscribe:list-subscribe:list-post: dkim-signature; bh=ECqSXjQP10zfe5KkamJz16+XpenOn/hmiA+j/1auHAo=; b=e2Dxv6I9d5SsFFrK1Jw3+bxrRds90X98f+ebaMB3XWGZCjLlsXcgG1Xc8exrT0FMPoeFMJ DI+d4nNJLxqZ/h3povFZW3yHFVmioJccfG6PLl0xMokbkfKq6YPHNANOww8M3O3KXkKhT/ fg/V5UQz02feJL2gMYwPiSF0BGB3lBpK/0+78Y75i5v9ykPnFrJFE8QViFt/q0ziBcK2T5 WgVW/Mja5+OuSs2xgsPbaSkXV1uraGadzPX818uGGBJiX8b9cs3vyEO8HPWjNPX8ON1WiY ftulpWdEF1bL6s071pqnfEe3NJOHX5j1dVaoHOOM/kzGAVDxxYkgOQ8W/WEWTQ== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1655442630; a=rsa-sha256; cv=none; b=Ni2WbOqonNhsaP5bNJEpAsSgkLUYYVkrA4ZfB6gaEfVTXa3GE54Zb6tMadZVVtP0iGEXvW fFoYBpF+BcObwtgIdT5iar9O/rOv7xuxwagvM0vMUV9uUpQilxPb4EG03QgcBoAkJM4z1d zt/OdHCG12jIw9WaH6iZ5R7X0XCfv/hLe/UzIRnz/0zSwQvPr3e5pzSBbNHKp55wUhUVk0 n6TQIAOPSOhaWSFBcQ7DzU28BUaDgiL9E0b8JPOPYCGcaCk8QbgikMhmd+v265qWZh5mPW 8NsWsWl2LCERqXpcMwH2tUrg2cvC1oRjD9ITK+px2bmyShlUxIf3If1jpTsZ+g== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20210112 header.b=FfZD8bq+; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: 5.21 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20210112 header.b=FfZD8bq+; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org" X-Migadu-Queue-Id: A6312982C X-Spam-Score: 5.21 X-Migadu-Scanner: scn0.migadu.com X-TUID: GJ7S1ThCLi3l Hi Liliana, We have a nice opportunity at the moment to truly phase out Python 2 from Guix, with just a handful packages remaining that still depend on it, so I'd like to focus on options other than re-introducing Python 2 dependencies at first. I tried updating the package like so: --8<---------------cut here---------------start------------->8--- diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index 4c1b97f041..89602dc127 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -1208,7 +1208,8 @@ (define-public python-pygame (define-public python-pygame-sdl2 (let ((real-version "2.1.0") - (renpy-version "7.4.11")) + ;; Use a pre-release version to match that of Renpy. + (renpy-version "8.0.0")) (package (inherit python-pygame) (name "python-pygame-sdl2") @@ -1216,17 +1217,16 @@ (define-public python-pygame-sdl2 (source (origin (method url-fetch) - (uri (string-append "https://www.renpy.org/dl/" renpy-version + (uri (string-append "https://www.renpy.org/dl/prerelease-8" "/pygame_sdl2-" version ".tar.gz")) - (sha256 (base32 "0nxvca16299jx6sp0ys29rqixcs21ymhqwjfkbchhss0yar7qjgz")) + (sha256 (base32 "1ml3650czvzi0k9ap12zz7ykldhzzk0251ncl62wdmncfqfq98wd")) (modules '((guix build utils))) (snippet '(begin ;; drop generated sources (delete-file-recursively "gen") (delete-file-recursively "gen3") - (delete-file-recursively "gen-static") - #t)))) + (delete-file-recursively "gen-static"))))) (build-system python-build-system) (arguments `(#:tests? #f ; tests require pygame to be installed first @@ -1243,8 +1243,7 @@ (define-public python-pygame-sdl2 (assoc-ref inputs "sdl-union") "/lib -Wl,-rpath," (assoc-ref inputs "sdl-union") - "/lib -Wl,--enable-new-dtags -lSDL2")) - #t))))) + "/lib -Wl,--enable-new-dtags -lSDL2"))))))) (inputs (list (sdl-union (list sdl2 sdl2-image sdl2-mixer sdl2-ttf)))) (native-inputs @@ -1260,22 +1259,23 @@ (define-public python-pygame-sdl2 (define-public renpy (package (name "renpy") - (version "7.4.11") - (source - (origin - (method url-fetch) - (uri (string-append "https://www.renpy.org/dl/" version - "/renpy-" version "-source.tar.bz2")) - (sha256 (base32 "0zkhg2sd2hglm9dkansf4h8sq7lm7iqslzl763ambp4kyfdvd07q")) - (modules '((guix build utils))) - (patches - (search-patches - "renpy-use-system-fribidi.patch")) - (snippet - '(with-directory-excursion "module" - ;; drop fribidi sources - (delete-file-recursively "fribidi-src") - #t)))) + ;; Use a pre-release version to avoid Python 2, which the last stable 7.5 + ;; release is still using. + (version "8.0.0") + (source (origin + (method url-fetch) + (uri (string-append "https://www.renpy.org/dl/prerelease-8" + "/renpy-" version "-source.tar.bz2")) + (modules '((guix build utils))) + (snippet + '(with-directory-excursion "module" + ;; drop fribidi sources + (delete-file-recursively "fribidi-src"))) + (sha256 + (base32 + "0bxihc8lkjmp769i4ih74si76i0lvdw86dg5j005kbj4m4cpvvax")) + (patches + (search-patches "renpy-use-system-fribidi.patch")))) (build-system python-build-system) (arguments `(#:tests? #f ; Ren'py doesn't seem to package tests @@ -1299,7 +1299,7 @@ (define-public renpy "/bin/cython")) (setenv "RENPY_DEPS_INSTALL" (string-join (map cdr inputs) ":")))) (replace 'build - (lambda* (#:key inputs outputs #:allow-other-keys #:rest args) + (lambda args ;; The "module" subdirectory contains a python (really cython) ;; project, which is built using a script, that is thankfully ;; named "setup.py". --8<---------------cut here---------------end--------------->8--- It currently fails to build due to a new dependency, 'tinyfiledialogs': --8<---------------cut here---------------start------------->8--- gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -fno-semantic-interposition -fPIC -I. -I/gnu/store/rvjwhr9ib88fm3s2h04n8jl4qpnb54rl-sdl-union-1.2.15/include -I/gnu/store/p7iq81hxxyk9zy7a9dngbf16zm8d4klx-libpng-1.6.37/include -I/gnu/store/rvjwhr9ib88fm3s2h04n8jl4qpnb54rl-sdl-union-1.2.15/include/SDL2 -I/gnu/store/ak70pk2hjks17cx7zjdmdmzpcpiy9gpi-freetype-2.10.4/include/freetype2 -I/gnu/store/jgmr3siy9dr8snlym3dfjbj0gmjzm2zk-ffmpeg-4.4.2/include -I/gnu/store/sh6j1xz8fz7a23x5y2w05rzxjamq4x7y-glew-2.1.0/include -I/gnu/store/9bx852151mzmmbpm92q46zk104qnan1d-python-pygame-sdl2-2.1.0-for-renpy-8.0.0/include/python3.9 -I/gnu/store/65i3nhcwmz0p8rqbg48gaavyky4g4hwk-python-3.9.9/include/python3.9 -c gen3/_renpytfd.c -o build/temp.linux-x86_64-3.9/gen3/_renpytfd.o -std=gnu99 -Wno-unused-function gen3/_renpytfd.c:618:10: fatal error: tinyfiledialogs/tinyfiledialogs.h: No such file or directory 618 | #include "tinyfiledialogs/tinyfiledialogs.h" --8<---------------cut here---------------end--------------->8--- > OTOH if our stance is that we really > don't want any python 2 stuff in Guix and rather have people use time > machine, I think we should loudly break the package (by removing it) > rather than silently. That appears to be exactly what NixOS has done: $ nix edit nixpkgs#renpy error: renpy has been removed from nixpkgs, it was unmaintained and the latest packaged version required python2 I think finishing the update started above would be a better option than removing it, if we have the bandwidth to tackle the update. Would you like to give it a try? Thanks, Maxim