From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0.migadu.com ([2001:41d0:403:58f0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms13.migadu.com with LMTPS id sBq2GtJlCWd/LAEAqHPOHw:P1 (envelope-from ) for ; Fri, 11 Oct 2024 17:52:18 +0000 Received: from aspmx1.migadu.com ([2001:41d0:403:58f0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0.migadu.com with LMTPS id sBq2GtJlCWd/LAEAqHPOHw (envelope-from ) for ; Fri, 11 Oct 2024 19:52:18 +0200 X-Envelope-To: larch@yhetil.org Authentication-Results: aspmx1.migadu.com; dkim=fail ("body hash did not verify") header.d=debbugs.gnu.org header.s=debbugs-gnu-org header.b=A3xBIKPj; dkim=fail ("body hash did not verify") header.d=gmail.com header.s=20230601 header.b=PhSNBHNA; 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"; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none) ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1728669138; 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: content-transfer-encoding:content-transfer-encoding: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=YBjZQdRiOB1y1+lMFIFyADRd30qh/UGnt/EVSJLf6n4=; b=lAECbPmTdZY9XFbrJYXZoZNQZzGAbMi2tPyFR2EunIf7lBW4nGOKBi5BsRu6RjaLEWnhpH 9YX1k0HHl6kn8xokg+Sh9vhSDiRpeYTrvcwlsoSgbPn6pVue/WF/qlMLMlFyb0WXTo7ZhN Zh6xSyd7+9DzCqIyzuZiX5e6r+7fBTDcaYacd4s0zg7gvgygEumksqXXPBoCGM4GmBl4SR dyNhhNtkO6SbNIFALG/QIgos96fw2JFaZAj4VUvWXF8Fo9zO6NG2MbPVIi3jLFiZ8or+Eg ktoiptTNY4KB+0vhjU+g0sKa0/bdwAdGujMIdZMPOI19AAjIvpIPurKLxHyfyA== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("body hash did not verify") header.d=debbugs.gnu.org header.s=debbugs-gnu-org header.b=A3xBIKPj; dkim=fail ("body hash did not verify") header.d=gmail.com header.s=20230601 header.b=PhSNBHNA; 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"; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none) ARC-Seal: i=1; s=key1; d=yhetil.org; t=1728669138; a=rsa-sha256; cv=none; b=jYrwClwDudeFutayTpzd1rgXHUNxDyqJHThBQKHAfKNDmTl7ffFsVi0cTGFmseakehaxP0 ulhO/Jk8ekuqB8Be+3TvsgMLWybaYdQ3+MG7/sf6iapBkAt3J280Nwkmk/W5HGGHsgrFNh 2xpKK5eN31A1goDjtsXHhlQ30tIucLNc5l+ga/3C9vrPHgWW4mkBuH/ikhqvXptnL5heuU 9CY9XCevLtgP2JnH0BYF3HEMZmD2umXNOZVwTZlwXjXrcHznnpWVtwbrxq+VWZv9MR05Ea J0RcFJjqAWmfhXnj1EJkJBtbfVaBqiUgv/Z+QDg1oo/8DzYB9T/hzdeLJQkErg== 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 29F9D7F838 for ; Fri, 11 Oct 2024 19:52:18 +0200 (CEST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1szJny-0002t8-1Q; Fri, 11 Oct 2024 13:51:58 -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 1szJnv-0002sw-WB for guix-patches@gnu.org; Fri, 11 Oct 2024 13:51:56 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1szJnv-0000tn-NP; Fri, 11 Oct 2024 13:51:55 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debbugs.gnu.org; s=debbugs-gnu-org; h=MIME-Version:References:In-Reply-To:Date:From:To:Subject; bh=E017XCRy52I3CcLd7cT8BHM72squOERFCPwLllaMvTA=; b=A3xBIKPjtceHvaiJoAwIRERr4/02pBc8daLdUYDaSINOH7f2LYeBAkLc2KMy81rKc8HQPqQVGVgUG9wAwGmVyRBo4Wvo7WUWnhjV3KomDLHqQp3QmYuTaMCJeTvThHrnomEHXVHDFNnid/Hc8vekhrpke+e5bxXtOLfDSSjzEIm/tsYN2Oz+lHc4mRI48j5hw700Jgg1Ji3yfb8T326GZ9pqxGfs/MGFKnICe7sFA5WQtiu/+jD3Uyv8xKjCI/Vc7yzCgvM4nKnY9JcGAYsnOTqTCkMc6MBoeZJCJml4cgXWMmPQjRF6i3SLHH6SXjreITpNgtMSWGrnpMENswGOUA==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1szJo1-0008Ii-Kn; Fri, 11 Oct 2024 13:52:01 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#73747] [PATCH 2/2] gnu: Add python-pyglet. Resent-From: Sharlatan Hellseher Original-Sender: "Debbugs-submit" Resent-CC: lars@6xq.net, marius@gnu.org, me@bonfacemunyoki.com, sharlatanus@gmail.com, tanguy@bioneland.org, jgart@dismail.de, guix-patches@gnu.org Resent-Date: Fri, 11 Oct 2024 17:52:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 73747 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 73747@debbugs.gnu.org Cc: Daniel =?UTF-8?Q?Mei=C3=9Fner?= , Morgan Smith , Adam Kandur , Sharlatan Hellseher , Adam Faiz , Lars-Dominik Braun , Marius Bakke , Munyoki Kilyungi , Sharlatan Hellseher , Tanguy Le Carrour , jgart X-Debbugs-Original-Xcc: Lars-Dominik Braun , Marius Bakke , Munyoki Kilyungi , Sharlatan Hellseher , Tanguy Le Carrour , jgart Received: via spool by 73747-submit@debbugs.gnu.org id=B73747.172866910731884 (code B ref 73747); Fri, 11 Oct 2024 17:52:01 +0000 Received: (at 73747) by debbugs.gnu.org; 11 Oct 2024 17:51:47 +0000 Received: from localhost ([127.0.0.1]:35277 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1szJnm-0008IB-K9 for submit@debbugs.gnu.org; Fri, 11 Oct 2024 13:51:47 -0400 Received: from mail-wr1-f54.google.com ([209.85.221.54]:52403) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1szJnh-0008Hn-5b for 73747@debbugs.gnu.org; Fri, 11 Oct 2024 13:51:44 -0400 Received: by mail-wr1-f54.google.com with SMTP id ffacd0b85a97d-37d495d217bso1850533f8f.0 for <73747@debbugs.gnu.org>; Fri, 11 Oct 2024 10:51:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1728669022; x=1729273822; darn=debbugs.gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=E017XCRy52I3CcLd7cT8BHM72squOERFCPwLllaMvTA=; b=PhSNBHNAgJqyF/HuBCjN7nekOGNGuqEmWQbVxsntaO9J3XRqEaTlXPN1HHTISE31hF uA5j3Ss+jZ6sf/NFhsFtXCUzEr90VVO4KctJfNcJr4Ttdhpmf+cdSYyl2G4QhQjspJus l+8EI4lcoD/bkfi/fHbYe+JZjAKdPNmawfjyd8ybgcUoDIrcDolc3ml0uAkoFDzMb8K3 5ekuiH4cl0DVC/J6T7J8BTEkWrJpcIUrm+66BwP6k0gcIxtRuXX4Q3GfRtfsklpBZ3qN mr2e61rWdHfxty968AngwscQYWmCD9btRC0P0VP8bwtsoZuEKbY5eF0/ASuwq3S1MyW/ kN7Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1728669022; x=1729273822; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=E017XCRy52I3CcLd7cT8BHM72squOERFCPwLllaMvTA=; b=kiKSebsbbSEvqb9FLTfj8lL3FsAYW8ZHiZYelVM5TdhNP4EeCXTyYJpkvES+f57OIa AH5DzUJd3c7m+JTH+n2vmWIHwTqDxEDnJB+9KISSt3bpf+RTIzjFSzmOG7Gys+OZpL+r u7+uvKuZdalKHFtfKcA2B1BPACf/uQr5RWiEymaXSZH/Mj9fx7Ft/hWBMojCxEoZFGht ZvGR7tYyJD0rIOyvAofkEiDH/JzWZcvLiEtan+KX2kr2bnEqo06eP4Wnpuew8XacITH8 CB9WsQ6KmdzlueJQqIP0urjYX9oiNtiCZp8Ns41BEgau4PYIs05I9kddkw3untY6GAua l8vQ== X-Gm-Message-State: AOJu0YxNQ7XKf2+ypWHjnc/d65450w7uw5flSyyeZKnyb+n/X8630W2Y M92JPgc/oShpSyQ/zaGQMgZXxqw1lsr7NE1iylm2HQ1C7DySoG9MArTIO7SjcfA= X-Google-Smtp-Source: AGHT+IFKaWmNrLJCqu2wOLcVupeonfDmfMpRfQ/LA+UdfbTkuHPpOui/D5h3XwbtvD6vl03FJaAiCA== X-Received: by 2002:a5d:5f49:0:b0:378:81aa:2653 with SMTP id ffacd0b85a97d-37d5ff28a48mr567321f8f.9.1728669022012; Fri, 11 Oct 2024 10:50:22 -0700 (PDT) Received: from guxtil.incerto.xyz (cpc100684-bagu15-2-0-cust967.1-3.cable.virginm.net. [86.8.111.200]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-a99a80bf86bsm234270766b.130.2024.10.11.10.50.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 11 Oct 2024 10:50:21 -0700 (PDT) From: Sharlatan Hellseher Date: Fri, 11 Oct 2024 18:50:17 +0100 Message-ID: <6f47672066456fa0bb4e38e5f052095c4032098d.1728658722.git.sharlatanus@gmail.com> X-Mailer: git-send-email 2.46.0 In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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-bounces+larch=yhetil.org@gnu.org X-Migadu-Country: US X-Migadu-Flow: FLOW_IN X-Spam: Yes X-Migadu-Spam: Yes X-Migadu-Spam-Score: 10.46 X-Spam-Score: 10.46 X-Migadu-Queue-Id: 29F9D7F838 X-Migadu-Scanner: mx11.migadu.com X-TUID: g8F72DwbaHMT This project was mentioned in #48467, #50505, #52116 and #67131. It's a refreshed version with most of the bindings implemented. * gnu/packages/python-graphics.scm (python-pyglet): New variable. Change-Id: I78718376bc2945184c32cb013309fbba2b2749d0 Co-Authored-By: Adam Kandur Co-Authored-By: Daniel Meißner Co-Authored-By: Morgan Smith Co-Authored-By: Adam Faiz --- gnu/packages/python-graphics.scm | 152 ++++++++++++++++++++++++++++++- 1 file changed, 151 insertions(+), 1 deletion(-) diff --git a/gnu/packages/python-graphics.scm b/gnu/packages/python-graphics.scm index ef981bd8d7..d0b4a1df74 100644 --- a/gnu/packages/python-graphics.scm +++ b/gnu/packages/python-graphics.scm @@ -1,4 +1,9 @@ ;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2021 Adam Kandur +;;; Copyright © 2021 Daniel Meißner +;;; Copyright © 2021 Morgan Smith +;;; Copyright © 2023 Adam Faiz +;;; Copyright © 2024 Sharlatan Hellseher (define-module (gnu packages python-graphics) #:use-module ((guix licenses) #:prefix license:) @@ -8,9 +13,18 @@ (define-module (gnu packages python-graphics) #:use-module (guix gexp) #:use-module (guix packages) #:use-module (gnu packages) + #:use-module (gnu packages audio) #:use-module (gnu packages check) + #:use-module (gnu packages compression) + #:use-module (gnu packages fontutils) + #:use-module (gnu packages gl) + #:use-module (gnu packages base) + #:use-module (gnu packages gtk) + #:use-module (gnu packages pulseaudio) #:use-module (gnu packages python-build) - #:use-module (gnu packages python-xyz)) + #:use-module (gnu packages python-xyz) + #:use-module (gnu packages video) + #:use-module (gnu packages xorg)) ;;; Commentary: ;;; @@ -21,6 +35,142 @@ (define-module (gnu packages python-graphics) ;;; ;;; Code: +(define-public python-pyglet + (package + (name "python-pyglet") + (version "2.0.18") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pyglet" version)) + (sha256 + (base32 "1p4rizj81vfqxal288m3afbrgk0il3w7k5kmhai2sah8f26j7ybw")))) + (build-system pyproject-build-system) + (arguments + (list + #:test-flags + #~(list "tests" + "--ignore=tests/interactive" + ;; All tests errored + "--ignore=tests/integration/media/test_openal.py" + "--ignore=tests/integration/text/test_empty_document.py" + ;; Tests failed + "-k" (string-append "not test2" + " and not test5" + " and not testPad" + " and not testPad" + " and not testRange" + " and not testRect" + " and not testRect" + " and not testSet" + " and not testSquare" + " and not testSquare" + " and not testTuple" + " and not testTupleRange" + " and not test_context_noshare_texture" + " and not test_context_share_texture" + " and not test_method" + " and not test_openal_listener" + " and not test_parse_all_controller_mappings" + " and not test_player_play" + " and not test_player_play_multiple" + " and not test_stream_write_needed" + " and not test_window_caption" + " and not test_window_caption_from_argv")) + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'patch-lib-paths + (lambda* (#:key inputs #:allow-other-keys) + (substitute* (list "pyglet/font/fontconfig.py" + "pyglet/font/freetype_lib.py" + "pyglet/gl/lib_glx.py" + "pyglet/input/linux/evdev.py" + "pyglet/libs/egl/egl.py" + "pyglet/libs/egl/lib.py" + "pyglet/libs/x11/xf86vmode.py" + "pyglet/libs/x11/xinerama.py" + "pyglet/libs/x11/xlib.py" + "pyglet/libs/x11/xsync.py" + "pyglet/media/drivers/openal/lib_openal.py" + "pyglet/media/drivers/pulse/lib_pulseaudio.py") + (("'EGL'") + (format #f "'~a/~a'" #$(this-package-input "mesa") + "lib/libEGL.so")) + (("\"fontconfig\"") + (format #f "'~a/~a'" #$(this-package-input "fontconfig-minimal") + "lib/libfontconfig.so")) + (("\"freetype\"") + (format #f "'~a/~a'" #$(this-package-input "freetype") + "lib/libfreetype.so")) + (("'GL'") + (format #f "'~a/~a'" #$(this-package-input "mesa") + "lib/libGL.so")) + (("'GLU'") + (format #f "'~a/~a'" #$(this-package-input "glu") + "lib/libGLU.so")) + (("'X11'") + (format #f "'~a/~a'" #$(this-package-input "libx11") + "lib/libX11.so")) + (("'Xext'") + (format #f "'~a/~a'" #$(this-package-input "libxext") + "lib/libXext.so")) + (("'Xinerama'") + (format #f "'~a/~a'" #$(this-package-input "libxinerama") + "lib/libXinerama.so")) + (("'Xxf86vm'") + (format #f "'~a/~a'" #$(this-package-input "libxxf86vm") + "lib/libXxf86vm.so")) + (("'c'") + (format #f "'~a/~a'" #$(this-package-input "glibc") + "lib/libc.so")) + (("'gdk-x11-2.0'") + (format #f "'~a/~a'" #$(this-package-input "gtk+") + "lib/gdk-pixbuf-2.0.so")) + (("'gdk_pixbuf-2.0'") + (format #f "'~a/~a'" #$(this-package-input "gdk-pixbuf") + "lib/libgdk_pixbuf-2.0.so")) + (("'openal'") + (format #f "'~a/~a'" #$(this-package-input "openal") + "lib/libopenal.so")) + (("'pulse'") + (format #f "'~a/~a'" #$(this-package-input "pulseaudio") + "lib/libpulse.so"))))) + (add-before 'check 'prepare-test-environment + (lambda _ + ;; The test suite requires a running X server. + (system "Xvfb :1 &") + (setenv "DISPLAY" ":1") + (setenv "HOME" "/tmp") + (setenv "PYGLET_HEADLESS" "True")))))) + (native-inputs + (list python-flit-core + python-pytest + unzip + xorg-server-for-tests)) + (inputs + (list ffmpeg + fontconfig + freeglut + freetype + gdk-pixbuf + glibc + glu + gtk+ + libx11 + libxext + libxinerama + libxxf86vm + mesa + openal + pulseaudio)) + (home-page "https://github.com/pyglet/pyglet") + (synopsis "Windowing and multimedia library") + (description + "Pyglet is a Python library for developing games and other visually-rich +applications. It supports windowing, user interface event handling, +Joysticks, OpenGL graphics, loading images and videos, playing sounds and +music." ) + (license license:bsd-3))) ;;; ;;; Avoid adding new packages to the end of this file. To reduce the chances -- 2.46.0