From patchwork Fri Jan 17 04:45:51 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 37098 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 4512E27BBEA; Fri, 17 Jan 2025 04:47:41 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-6.6 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED,DKIM_VALID,FREEMAIL_FROM,MAILING_LIST_MULTI, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_VALIDITY_CERTIFIED,RCVD_IN_VALIDITY_RPBL, RCVD_IN_VALIDITY_SAFE,SPF_HELO_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id A07B227BBE2 for ; Fri, 17 Jan 2025 04:47:40 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tYeGC-0005JC-2e; Thu, 16 Jan 2025 23:47:08 -0500 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 1tYeG7-0005IQ-Np for guix-patches@gnu.org; Thu, 16 Jan 2025 23:47:04 -0500 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 1tYeG7-0004yw-FZ for guix-patches@gnu.org; Thu, 16 Jan 2025 23:47:03 -0500 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=abcq6TcTXIp8mrtbLfQpivSBoxNLS/gqPx7rQGQ66AM=; b=na5BuSWTVYSns1wzBAIklZssH1bhGBHg6Sya6Mybdm1qVBycBxHrzHUlmyC9SPCwoPd2128dfbqOcRNakl5IvK+//djtmj3MAgSyENoZe9xL/bfmi1cpZPWubQ6/PCVCGeL/DGuBlKzr+ClFkEdOIPhLfvIrLNiNDP8uSh62wTFNXpWGaRLL2e/RFjnb4sUyrtLzROv3mH+KRRSMjoYGz10kdlokNEbGN4TIDpLc8nIqSNv9LqiCkqqN89j3eBcAzF5Y6vDIQXbOK4jts3WB7fjIqgP85vBDbdxfTdrFZGJDOn49xyoaWpgx/gswrNMeaEux0rz1Ef7pWgwiQ+l54Q==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1tYeG6-0001ST-Ae; Thu, 16 Jan 2025 23:47:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#75619] [PATCH 1/7] gnu: Add soundtouch-1/integer-samples. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: gabriel@erlikon.ch, guix-patches@gnu.org Resent-Date: Fri, 17 Jan 2025 04:47:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75619 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 75619@debbugs.gnu.org Cc: Maxim Cournoyer , Gabriel Wicki X-Debbugs-Original-Xcc: Gabriel Wicki Received: via spool by 75619-submit@debbugs.gnu.org id=B75619.17370891965525 (code B ref 75619); Fri, 17 Jan 2025 04:47:02 +0000 Received: (at 75619) by debbugs.gnu.org; 17 Jan 2025 04:46:36 +0000 Received: from localhost ([127.0.0.1]:35594 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tYeFg-0001R2-20 for submit@debbugs.gnu.org; Thu, 16 Jan 2025 23:46:36 -0500 Received: from mail-pl1-x62a.google.com ([2607:f8b0:4864:20::62a]:47165) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from ) id 1tYeFb-0001Qe-Qh for 75619@debbugs.gnu.org; Thu, 16 Jan 2025 23:46:33 -0500 Received: by mail-pl1-x62a.google.com with SMTP id d9443c01a7336-21680814d42so26666115ad.2 for <75619@debbugs.gnu.org>; Thu, 16 Jan 2025 20:46:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1737089184; x=1737693984; 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=abcq6TcTXIp8mrtbLfQpivSBoxNLS/gqPx7rQGQ66AM=; b=FdaTjjHSn2Ifplv6pQxmPuzYIt12l/dsJ1mbC9gIjdqgkc4SClB2T15CAnMXQ3ON5J XkOgVonuZjvwNjgMBOnH+GKEN7yzoB8G1h/rLaFfURUtO5mbtvzMRhBtfx/ESClRxeUD VcEMI3YX9E5ED03HDXnp/kzlmUccXg56RxR+0wH+HVNJmqU/bk3iciniDJauecGQMz9Z 21V7wz+Jk6TOkJdjGR+f7RpubYGJJSDh4/E/yaxkxkRgBmu00NHnAvumT5J02e2JoxiC 8wKNNUJvlVFuQunzV3GPPXE40HJAfhDWKwkpdWRVKXC9pFMUVWhE1oN4gwZ1PtELSAlR 8wpw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737089184; x=1737693984; 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=abcq6TcTXIp8mrtbLfQpivSBoxNLS/gqPx7rQGQ66AM=; b=U/HyZR3+fEoXRwn7cKnLSY74NBkDAMTIChFWCvSPEU0pUpDsVDf+3GPCUFJkaXbr2E AZwKV+1YzfBEx+7+/ajdqGx42iHcgoprQ3t7lbYPmRtuIlPVRdOOhbonPGXC0A3lrhyF 1WVEUmYV+XM1fN4JHr9CewDyLoYy/cW3nXy2mtzOmvlh/dWxXUhARqTQl6zH+MeMO81b AKPqVmnX493m9T9sZypvNeOR18GgheP21kGSthh0VOYQwU+/l1aOAmQ5lDQ1cPTNJpB2 htj4XBq5mTJJBsZwEnvmSTtyDteUw8UlQdVHcwuN7NJ47U3cxs3SZ6kdlB6AajAplD6T 28Tg== X-Gm-Message-State: AOJu0YzS7RCNn/VgOlkQmxxZUwKfhxOhN4W2S/RhdHp3l5zYKZTOaawa nhJmNLshfQZ3u2sp61VGUFWR3ClvtZl9oXx3F6dHxq6Nuy+LHfu70YJJOYph X-Gm-Gg: ASbGncuphSR+SCoIAa8Mlqvj15Glcfilw66vH7+p0wiOxzCmEzyzQmxUQhBwr5dO8Ab YmQ5RZ1pP/SpWfXr6hWVAjIDIL3ya/NAf+DABtqYpNZ08Uc44bqzIiJfhR4yD9W6I4z0HKdikfh mZG5WIy9QzVsvPdOLKQXM3IrJqY3DQr/xPC/+H8Q0tzCQv3VrFg2pSkXYX23v21LFjuECJEScNc dXtVfIZz0mHX1kyEfg+1/LovaHlHqd8vm4Kd8Q57rqKFIfwVeSfOJub2QiGAqqVbtJVTEsp7u4= X-Google-Smtp-Source: AGHT+IG1UFu9T63HuUBuqKJuqZbGuHQd4yi+RCqem/WtuCKhK1LuVd6Re258ngqObojLaJsS3TDVcQ== X-Received: by 2002:a05:6a20:394a:b0:1db:de38:294b with SMTP id adf61e73a8af0-1eb215fb30fmr2319280637.38.1737089184559; Thu, 16 Jan 2025 20:46:24 -0800 (PST) Received: from localhost.localdomain ([2405:6586:be0:0:c8ff:1707:9b9:af89]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-a9bdf57de17sm863935a12.77.2025.01.16.20.46.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 16 Jan 2025 20:46:24 -0800 (PST) From: Maxim Cournoyer Date: Fri, 17 Jan 2025 13:45:51 +0900 Message-ID: <035ad50ab4e122c87225bd43e423fb17c75578e1.1737083128.git.maxim.cournoyer@gmail.com> X-Mailer: git-send-email 2.47.1 In-Reply-To: References: MIME-Version: 1.0 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+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/audio.scm (soundtouch-1/integer-samples): New variable. Change-Id: Iea6e1313f2c7189ded9abf100f07ed530793f9f0 --- gnu/packages/audio.scm | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 712337dda8..1c4f3176ee 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -11,7 +11,7 @@ ;;; Copyright © 2016–2023 Tobias Geerinckx-Rice ;;; Copyright © 2018, 2020, 2024 Oleg Pykhalov ;;; Copyright © 2018 okapi -;;; Copyright © 2018, 2020, 2022, 2023, 2024 Maxim Cournoyer +;;; Copyright © 2018, 2020, 2022-2025 Maxim Cournoyer ;;; Copyright © 2018 Clément Lassieur ;;; Copyright © 2018 Brett Gilio ;;; Copyright © 2018, 2019, 2022 Marius Bakke @@ -4355,6 +4355,30 @@ (define-public soundtouch control functionality, or just for playing around with the sound effects.") (license license:lgpl2.1+))) +(define-public soundtouch-1/integer-samples + (package + (inherit soundtouch) + (name "soundtouch") + (version "1.9.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/soundtouch/soundtouch.git") + (commit (string-append name "-" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1ir961w5gz86cm6yivr1ypi6n2y52vn319gy2gvdkkbbz5wyjkrq")))) + (arguments + ;; Dolphin expects the samples to be of the integer type. + (list #:configure-flags #~(list "--enable-integer-samples") + #:phases #~(modify-phases %standard-phases + (replace 'bootstrap + (lambda _ + ;; Avoid the bootstrap script, which has a broken + ;; shebang. + (invoke "autoreconf" "-vif")))))))) + (define-public stargate-soundtouch ;; Stargate's fork of soundtouch. (let ((commit "464f474c0be5d7e0970909dd30593012e4621468") From patchwork Fri Jan 17 04:45:52 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 37099 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 1B7B527BBEA; Fri, 17 Jan 2025 04:47:44 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-6.6 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED,DKIM_VALID,FREEMAIL_FROM,MAILING_LIST_MULTI, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_VALIDITY_CERTIFIED,RCVD_IN_VALIDITY_RPBL, RCVD_IN_VALIDITY_SAFE,SPF_HELO_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 524A727BBE2 for ; Fri, 17 Jan 2025 04:47:43 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tYeGI-0005Kb-8f; Thu, 16 Jan 2025 23:47:14 -0500 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 1tYeGE-0005Jp-56 for guix-patches@gnu.org; Thu, 16 Jan 2025 23:47:10 -0500 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 1tYeGB-0004zp-Vi for guix-patches@gnu.org; Thu, 16 Jan 2025 23:47:08 -0500 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=TU0K7RMdntPDF45tCth/xpeHqW9nJog/J1/Rljq2UVE=; b=FP0ENwlzwIF5o5l9n9qRQpro8tI04ZgXyqOtCN/jvGScJi3q6qV2VxYbiaqQ55cyLwU4V3nYmUnYsp073SatUfPqQGkTZJ7bTapJwpLV1RE8/dBsFsgUGTSELMFye2EVGrA23Bs/K4wcN6/+4nIkW8FOBh6Fa2hXu1DF3+tGtuQ2H4hiFOmu28/NM4DFkDG2v1mM98NWZJ+KjfsqHmz8d5E3dhD97h2MgBU/awCF/3wITY/+KzJlvB2KqIojrP40nPYeOWf057/fpx2UqHGnec2rxqAzUJ3pxkOf/Z8Znf/Ej4P9jB5sl3rA4CccQXbL5VCEmljTJCVl8X6lkUFZEA==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1tYeG6-0001SZ-Pd; Thu, 16 Jan 2025 23:47:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#75619] [PATCH 2/7] gnu: dolphin-emu: Unbundle more libraries and enable tests. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: adam.faiz@disroot.org, liliana.prikler@gmail.com, iyzsong@envs.net, guix-patches@gnu.org Resent-Date: Fri, 17 Jan 2025 04:47:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75619 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 75619@debbugs.gnu.org Cc: Maxim Cournoyer , Adam Faiz , Liliana Marie Prikler , =?utf-8?b?5a6L5paH5q2m?= X-Debbugs-Original-Xcc: Adam Faiz , Liliana Marie Prikler , =?utf-8?b?5a6L5paH5q2m?= Received: via spool by 75619-submit@debbugs.gnu.org id=B75619.17370892115561 (code B ref 75619); Fri, 17 Jan 2025 04:47:02 +0000 Received: (at 75619) by debbugs.gnu.org; 17 Jan 2025 04:46:51 +0000 Received: from localhost ([127.0.0.1]:35597 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tYeFq-0001RT-Mv for submit@debbugs.gnu.org; Thu, 16 Jan 2025 23:46:51 -0500 Received: from mail-pl1-x633.google.com ([2607:f8b0:4864:20::633]:51607) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from ) id 1tYeFm-0001RA-Ur for 75619@debbugs.gnu.org; Thu, 16 Jan 2025 23:46:45 -0500 Received: by mail-pl1-x633.google.com with SMTP id d9443c01a7336-216401de828so29293225ad.3 for <75619@debbugs.gnu.org>; Thu, 16 Jan 2025 20:46:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1737089196; x=1737693996; 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=TU0K7RMdntPDF45tCth/xpeHqW9nJog/J1/Rljq2UVE=; b=RkS2Vy5ijZDQfNBbPABHFrPVrb6UO5NRO8DOXsMfooxCn3IArB7WFv/uTF4y5zzdQG xljlMR+FvewmLan0H6c5lDa/6J1eC1D3F48o2OuTYsU1i0C1DtDiljWtJddg4gZ/fpSC rjOBZmOarXuYsoDcgyjGq5r9Ki43NazsVeL3ZREReXgPZARrqmu4VE0f25SyOkSsaPC/ MdFBJsVrCVhhUQkDpBgwls07CNgNstEQTbX2drAi+HnXMKQWSM+GmS8gU5qsVgirDCBv xvXw/sN799o/wGp8LJP27kmceBI1tHwnEZC9ukGkZN2RXm+KTH9AiRAXEd/u3pu4ycBG 74qg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737089196; x=1737693996; 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=TU0K7RMdntPDF45tCth/xpeHqW9nJog/J1/Rljq2UVE=; b=hbpplXm6SByvc35PsyNHvoq1UX+TcyEicrV7ZH3S2L5PtLpvNFXT8ULHrHL4SK0C9p mBgGC3G47NSBnZb7FXZB6D5Lz4A/8DYJTTZgRIMopuNxKQREa3uC5QYI3HXz3U0sO9le lquaJ4qURwB8+VTEQuT9tjkzIN2OdNz1TGgAd1fhnZriI9eVi2ol/AwYYbt7ALtyqcOY G9eQ7fgh2RvY/NZwwRcPEnIKcU4Jm9flbnG4na0PqvYEI+f89JfkfNGRr7xsr5/HHNnB 8KuVB7cSS13+oW3G41Q78VEr7a0mFJoaytuvn5n3F8Ht8v3ZUSOSbJ2ZZ4uspsOTe0SI 4NsA== X-Gm-Message-State: AOJu0YycdIpCNoMnIbv+Gm52S6CNCj8uS1RIvppYshEHhz185rKtFHVa EYzKyPf3s1qx742xpjZZaAbygT/7CD2Tb23gbBoC4hX+Pp8iOdcFfB/Nc/PM X-Gm-Gg: ASbGnctjIb+vHGvE6zMwwsamdaef+SGQqOfMahUfUCWs9uTvCpPFrTIBedCAVgGKW/6 oz7+zSSqNRBJfl5QJDHVG4iOBDVNzGtA6zl6F2F0eNya3wZZuCri+atMq6ynntBP1rmkHFymoR2 3tMpuz+wNr2TdiN1WzyeDlWsUK85/z3bigVAlzvRSTA56R+Xi4ialU0hHBabPeh6P0H+xcUwdgP vWfsf7IMJccuLVAjAF6zTOk4ZCjAb+ukt8iUh1hPK0EOAdY0sA9wHn/x1XnziL7Je2+puxkFLzs LQiG75ZRik2f X-Google-Smtp-Source: AGHT+IFhmvmM95mtgowWm0z6Moifa+C7PtuLQ/j+oecCB5dbb1LqnOK8onRR/W2HgOJZNay9vHJAbw== X-Received: by 2002:a05:6a00:4207:b0:72d:710d:611c with SMTP id d2e1a72fcca58-72dafae2337mr2599942b3a.20.1737089196198; Thu, 16 Jan 2025 20:46:36 -0800 (PST) Received: from localhost.localdomain ([2405:6586:be0:0:c8ff:1707:9b9:af89]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-a9bdf57de17sm863935a12.77.2025.01.16.20.46.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 16 Jan 2025 20:46:35 -0800 (PST) From: Maxim Cournoyer Date: Fri, 17 Jan 2025 13:45:52 +0900 Message-ID: X-Mailer: git-send-email 2.47.1 In-Reply-To: References: MIME-Version: 1.0 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+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/emulators.scm (dolphin-emu) [source] : Delete bzip2, cubeb, enet, fmt, pugixml, soundtouch, xxhash and zstd sources and de-register enet, soundtouch and xxhash from the build system. [arguments] <#:tests?>: Delete argument. <#:phases>: Add remove-unittests-target-post-build-command and post-check phases. <#:configure-flags>: Specify CMAKE_CXX_FLAGS to locate soundtouch headers. <#:test-target>: New argument. [inputs]: Add bzip2, cubeb, enet, fmt-7, minizip-ng, xxhash and zstd:lib. Replace soundtouch with soundtouch-1/integer-samples. Change-Id: Id996d992674f9efbbb2eb562286447a388716a82 --- gnu/packages/emulators.scm | 142 ++++++++++++++++++++++++++----------- 1 file changed, 100 insertions(+), 42 deletions(-) diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm index 9e2d6485dd..6f77329f27 100644 --- a/gnu/packages/emulators.scm +++ b/gnu/packages/emulators.scm @@ -15,7 +15,7 @@ ;;; Copyright © 2020 Christopher Howard ;;; Copyright © 2021 Felipe Balbi ;;; Copyright © 2021, 2024 Felix Gruber -;;; Copyright © 2021, 2024 Maxim Cournoyer +;;; Copyright © 2021, 2024, 2025 Maxim Cournoyer ;;; Copyright © 2021 Guillaume Le Vaillant ;;; Copyright © 2023 c4droid ;;; Copyright © 2023 Yovan Naumovski @@ -94,6 +94,7 @@ (define-module (gnu packages emulators) #:use-module (gnu packages ncurses) #:use-module (gnu packages networking) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages pretty-print) #:use-module (gnu packages pulseaudio) #:use-module (gnu packages python) #:use-module (gnu packages python-build) @@ -294,58 +295,112 @@ (define-public dolphin-emu ;; Remove external stuff we don't need. (for-each (lambda (dir) (delete-file-recursively - (string-append "Externals/" dir))) - '("LZO" "OpenAL" "Qt" "SFML" "curl" "ffmpeg" - "gettext" "hidapi" "libpng" "libusb" "mbedtls" - "miniupnpc" "MoltenVK" "zlib")) + (string-append "Externals/" dir))) + '("LZO" "OpenAL" "Qt" "SFML" "bzip2" + ;; XXX: Attempting to use the vulkan-headers package + ;; results in "error: + ;; ‘VK_PRESENT_MODE_RANGE_SIZE_KHR’ was not declared + ;; in this scope". + ;;"Vulkan" + "cubeb" "curl" "enet" + "ffmpeg" "fmt" "gettext" + ;; XXX: Attempting to use an unbundled glslang at the + ;; exact commit used by Dolphin still results in + ;; "error: ‘DefaultTBuiltInResource’ is not a member + ;; of ‘glslang’". + ;;"glslang" + ;; XXX: Googletest cannot currently easily be + ;; unbundled, as there are missing linking + ;; directives. + ;;"gtest" + "hidapi" "libpng" "libusb" "mbedtls" + "miniupnpc" "minizip" "MoltenVK" "pugixml" + "soundtouch" + "xxhash" "zlib" "zstd")) ;; Clean up source. (for-each delete-file - (find-files "." ".*\\.(bin|dsy|exe|jar|rar)$")))))) + (find-files "." ".*\\.(bin|dsy|exe|jar|rar)$")) + ;; Do not attempt to include now-missing directories. + (substitute* "CMakeLists.txt" + ((".*add_subdirectory.*Externals/enet.*") "") + ((".*add_subdirectory.*Externals/soundtouch.*") "") + ((".*add_subdirectory.*Externals/xxhash.*") "")))))) (build-system cmake-build-system) (arguments - '(#:tests? #f - #:phases - (modify-phases %standard-phases - (add-before 'configure 'generate-fonts&hardcore-libvulkan-path - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((fontfile - (search-input-file inputs - "/share/fonts/truetype/wqy-microhei.ttc")) - (libvulkan - (search-input-file inputs "/lib/libvulkan.so"))) - (chdir "docs") - (invoke "bash" "-c" "g++ -O2 $(freetype-config \ + (list + #:phases + #~(modify-phases %standard-phases + (add-before 'configure 'remove-unittests-target-post-build-command + (lambda _ + ;; To skip a few problematic tests, CTest will be manually + ;; invoked in the post-check phase. + (with-directory-excursion "Source/UnitTests" + (substitute* "CMakeLists.txt" + (("add_custom_command\\(TARGET unittests POST_BUILD.*") + ""))))) + (add-before 'configure 'generate-fonts&hardcore-libvulkan-path + (lambda* (#:key inputs #:allow-other-keys) + (let ((fontfile + (search-input-file inputs + "/share/fonts/truetype/wqy-microhei.ttc")) + (libvulkan + (search-input-file inputs "/lib/libvulkan.so"))) + (chdir "docs") + (invoke "bash" "-c" "g++ -O2 $(freetype-config \ --cflags --libs) gc-font-tool.cpp -o gc-font-tool") - (invoke "./gc-font-tool" "a" fontfile "font_western.bin") - (invoke "./gc-font-tool" "s" fontfile "font_japanese.bin") - (copy-file "font_japanese.bin" "../Data/Sys/GC/font_japanese.bin") - (copy-file "font_western.bin" "../Data/Sys/GC/font_western.bin") - (chdir "..") - (substitute* "Source/Core/VideoBackends/Vulkan/VulkanLoader.cpp" - (("\"vulkan\", 1") (string-append "\"vulkan\"")) - (("\"vulkan\"") (string-append "\"" libvulkan "\"")) - (("Common::DynamicLibrary::GetVersionedFilename") "")))))) - - ;; The FindGTK2 cmake script only checks hardcoded directories for - ;; glib/gtk headers. - - #:configure-flags - (list (string-append "-DX11_INCLUDE_DIR=" - (assoc-ref %build-inputs "libx11") - "/include") - (string-append "-DX11_LIBRARIES=" - (assoc-ref %build-inputs "libx11") - "/lib/libX11.so") - "-DX11_FOUND=1"))) + (invoke "./gc-font-tool" "a" fontfile "font_western.bin") + (invoke "./gc-font-tool" "s" fontfile "font_japanese.bin") + (copy-file "font_japanese.bin" "../Data/Sys/GC/font_japanese.bin") + (copy-file "font_western.bin" "../Data/Sys/GC/font_western.bin") + (chdir "..") + (substitute* "Source/Core/VideoBackends/Vulkan/VulkanLoader.cpp" + (("\"vulkan\", 1") (string-append "\"vulkan\"")) + (("\"vulkan\"") (string-append "\"" libvulkan "\"")) + (("Common::DynamicLibrary::GetVersionedFilename") ""))))) + (add-after 'check 'post-check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (with-directory-excursion "Source/UnitTests" + (invoke "ctest" "-V" "--output-on-failure" + ;; These tests fail due to libusb failing to + ;; init inside the build container. + "-E" (string-join + '("MMIOTest" + "PageFaultTest" + "CoreTimingTest" + "FileSystemTest" + "PowerPCTest" + "VertexLoaderTest") + "|"))))))) + ;; The FindGTK2 cmake script only checks hardcoded directories for + ;; glib/gtk headers. Also add some include directories via the CXX + ;; flags to let GCC find some headers not actively searched by the + ;; build system. + #:configure-flags + #~(list (string-append "-DCMAKE_CXX_FLAGS=" + "-I" (search-input-directory + %build-inputs "include/soundtouch")) + (string-append "-DX11_INCLUDE_DIR=" + #$(this-package-input "libx11") + "/include") + (string-append "-DX11_LIBRARIES=" + (search-input-file %build-inputs + "lib/libX11.so")) + "-DX11_FOUND=1") + #:test-target "unittests")) (native-inputs (list gettext-minimal pkg-config)) (inputs (list alsa-lib ao bluez + bzip2 + cubeb curl + enet eudev ffmpeg-4 + fmt-7 font-wqy-microhei freetype glew @@ -363,6 +418,7 @@ (define-public dolphin-emu mbedtls-lts mesa miniupnpc + minizip-ng openal pugixml pulseaudio @@ -370,9 +426,11 @@ (define-public dolphin-emu sdl2 sfml soil - soundtouch + soundtouch-1/integer-samples vulkan-loader - zlib)) + xxhash + zlib + `(,zstd "lib"))) (home-page "https://dolphin-emu.org/") (synopsis "Nintendo Wii and GameCube emulator") (description @@ -380,7 +438,7 @@ (define-public dolphin-emu GameCube and the Wii. It provides compatibility with all PC controllers, turbo speed, networked multiplayer, and graphical enhancements.") (supported-systems '("x86_64-linux" "aarch64-linux")) - ; dolphin/Data/Sys/GC/font_*.bin: Licensed under ASL2.0. + ;; dolphin/Data/Sys/GC/font_*.bin: Licensed under ASL2.0. (license (list license:gpl2+ license:asl2.0 license:fdl1.2+))))) (define-public dosbox From patchwork Fri Jan 17 04:45:53 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 37097 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 9D6FC27BBE9; Fri, 17 Jan 2025 04:47:36 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-6.6 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED,DKIM_VALID,FREEMAIL_FROM,MAILING_LIST_MULTI, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_VALIDITY_CERTIFIED,RCVD_IN_VALIDITY_RPBL, RCVD_IN_VALIDITY_SAFE,SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id C2B2727BBE2 for ; Fri, 17 Jan 2025 04:47:35 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tYeGC-0005Ja-OJ; Thu, 16 Jan 2025 23:47:08 -0500 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 1tYeGA-0005J1-7h for guix-patches@gnu.org; Thu, 16 Jan 2025 23:47:06 -0500 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 1tYeG8-0004zA-7h for guix-patches@gnu.org; Thu, 16 Jan 2025 23:47:05 -0500 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=T5RsxWDs8q5GrbfpoFm97GWxQ7oUsUa2lgitQKyJiGY=; b=cmAYxPEwyUKys8l9v/X8JE5ZS9GN1G3fbxtk/X+gh0Kn/a7o30N7q9DxIx3Poz10rd2eP89d/B+nlQOEYeWt+3WjjRSDE7UoOWCzi8cOPqDuFi7mA+yP29bNZDMBECnCKp6dT+iUWUsfNezAYHqJpcyV2Hre3riPbwBTl5wgfPkfTwFWp1OEREb4b74xy9nb+xuVzfnSvlx/pQeBGtsTuOjdCxO+YPfG31K99aLycDsKoxOlVSvbSGvstzYmMkUcJRBUrmyPNyjUZjmsdpRusHzGiXuqFAj3RHTx4zvOUhkgc2xdUsjkwImZr3E/xc6Mk2pi1RAkq4UGvJai92D/fQ==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1tYeG7-0001Sh-5m; Thu, 16 Jan 2025 23:47:03 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#75619] [PATCH 3/7] gnu: dolphin-emu: Build .bin binary files and preserve data ones. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: adam.faiz@disroot.org, liliana.prikler@gmail.com, iyzsong@envs.net, guix-patches@gnu.org Resent-Date: Fri, 17 Jan 2025 04:47:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75619 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 75619@debbugs.gnu.org Cc: Maxim Cournoyer , Adam Faiz , Liliana Marie Prikler , =?utf-8?b?5a6L5paH5q2m?= X-Debbugs-Original-Xcc: Adam Faiz , Liliana Marie Prikler , =?utf-8?b?5a6L5paH5q2m?= Received: via spool by 75619-submit@debbugs.gnu.org id=B75619.17370892135569 (code B ref 75619); Fri, 17 Jan 2025 04:47:03 +0000 Received: (at 75619) by debbugs.gnu.org; 17 Jan 2025 04:46:53 +0000 Received: from localhost ([127.0.0.1]:35600 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tYeFw-0001Rl-EE for submit@debbugs.gnu.org; Thu, 16 Jan 2025 23:46:52 -0500 Received: from mail-pl1-x635.google.com ([2607:f8b0:4864:20::635]:49322) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from ) id 1tYeFu-0001RL-00 for 75619@debbugs.gnu.org; Thu, 16 Jan 2025 23:46:50 -0500 Received: by mail-pl1-x635.google.com with SMTP id d9443c01a7336-21634338cfdso41888735ad.2 for <75619@debbugs.gnu.org>; Thu, 16 Jan 2025 20:46:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1737089203; x=1737694003; 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=T5RsxWDs8q5GrbfpoFm97GWxQ7oUsUa2lgitQKyJiGY=; b=d1eRLFhUfyHlB9aKstlFE0vteUQZsRukppB/WhyNPSSnlcJYqgya1ms46IC6htRam2 e8wp4zfdlSUFdjsxRE6T5oGpqsPOu44ebpxYtL2sNsA0xuXbaS9m7Vn9r636sgP0XkM3 46p0Jt2/D+0mmpYZX7U4EkJOH9HJGuPhjVT54yulZMHYb4qd1csFEdFuwYpWnGhrBT50 IHqQqw8UXA3DDF9mq9md2BNaMjNpGpo7ddgyMf8XgGIA/c6cVJ3YZwBDumiWB01O9UFJ 1NH2veSis6/lRwAfQwn9WbD/hBM1zyAbG9NJ91shD+DUxnMntVTf/cegGtbTwMC7MAFy pbFQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737089203; x=1737694003; 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=T5RsxWDs8q5GrbfpoFm97GWxQ7oUsUa2lgitQKyJiGY=; b=mdW6gwqsuTrmaKi0DHqYqzlS0Re6O/pDe7/jY8N/Xo45BHtuBwRd4MeUw99NPP95xP t4fkO4vgIyb2RxK8pQnBzcdPQR73VMKURV/ko5bwfoj7duXxi0/1UXQj+E755Lh4OpzV syBu8JRIQ4EwIdSdiv+48q6f0OIEMrOXQNvOqZYjOPSNtn3RBWf3fUxlMEKdMRq3MzKn C0PNxJUANQqoQQ468PthVjeKuDDuW0IvY91aYBh/1f1xlUgHQRZNdvIPTpm+CfmI/NN5 oKGD9pl8G+D6p8wroCjTwE4UOazJt3pNHSrs3rtpM+Sru5EztcdsQZ1GXrZKboNZWktM iivw== X-Gm-Message-State: AOJu0YwCv0YTzajQ5dWLdd7NojIN/+dwC89ypT/m6+av6GV5ltGoLZH3 Cf+r24PhVNyTaTyVTGU9sGFNcZxmLpdvs+EjGzmAbCFn3tQ2sDDWoEt4p3gZ X-Gm-Gg: ASbGncvCUve501I6CqkeIGbUkkk1U47yToIjnWKDDRUTpkT9oUKM/BCJ1x1ZFLWzF4G GwmLfCX9Ee0JWRXMOUJ0AJkC+3QEtgidnffMdzMeFfyBJno3XcyZYPvUE0/0g6DA2Nk3SYcT6+n XtOtIRca7sTxERS34DxNlpWSrXFNfOzFZDXzkiW7oJn5fhqY/sjr6eRELVt1Y+fy+/k/N96Ms3D z8VbEqm+ZAEqd9gkVqNIeQi03WrbfZHJM35IoE1iCoitDfcx1chVJSgj0fgEKb8P/+wmTbR1PQ= X-Google-Smtp-Source: AGHT+IHVRqhrNcwKvG6v7QyfZ0Nvnsi17OJSrayTQ4LvdS5vUE/eeOrKZZ4GDe2zw9T/hqLgLmlKfA== X-Received: by 2002:a05:6a20:244f:b0:1e1:9fef:e960 with SMTP id adf61e73a8af0-1eb214650d6mr1961257637.6.1737089202904; Thu, 16 Jan 2025 20:46:42 -0800 (PST) Received: from localhost.localdomain ([2405:6586:be0:0:c8ff:1707:9b9:af89]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-a9bdf57de17sm863935a12.77.2025.01.16.20.46.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 16 Jan 2025 20:46:42 -0800 (PST) From: Maxim Cournoyer Date: Fri, 17 Jan 2025 13:45:53 +0900 Message-ID: <87b75e47d4fc308896e1ab8e86bd58cd049ab97f.1737083128.git.maxim.cournoyer@gmail.com> X-Mailer: git-send-email 2.47.1 In-Reply-To: References: MIME-Version: 1.0 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+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches These files are necessary to save games, enable cheat codes, etc. * gnu/packages/emulators.scm (dolphin-emu) [source] : Refine to avoid deleting a few .bin which are not executable objects but rather configuration files samples. [phases]: Add build-codeloader.bin, build-dsp_rom.bin and build-dsp_coefs.bin phases. [arguments] : Add -DDSPTOOL=ON. [native-inputs]: Add a cross-compiler for powerpc. Add python-minimal and python-numpy. Change-Id: Ida8df1add940e1708c557223409d854aa995e8a5 --- gnu/packages/emulators.scm | 50 ++++++++++++++++++++++++++++++++++---- 1 file changed, 45 insertions(+), 5 deletions(-) diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm index 6f77329f27..2486485805 100644 --- a/gnu/packages/emulators.scm +++ b/gnu/packages/emulators.scm @@ -98,6 +98,7 @@ (define-module (gnu packages emulators) #:use-module (gnu packages pulseaudio) #:use-module (gnu packages python) #:use-module (gnu packages python-build) + #:use-module (gnu packages python-xyz) #:use-module (gnu packages qt) #:use-module (gnu packages sdl) #:use-module (gnu packages sphinx) @@ -289,7 +290,8 @@ (define-public dolphin-emu (file-name (git-file-name name version)) (sha256 (base32 "1p8qsxlabgmz3nic0a9ghh9d3lzl5f8i3kmdrrvx6w8kdlp33018")) - (modules '((guix build utils))) + (modules '((guix build utils) + (ice-9 regex))) (snippet '(begin ;; Remove external stuff we don't need. @@ -317,9 +319,19 @@ (define-public dolphin-emu "miniupnpc" "minizip" "MoltenVK" "pugixml" "soundtouch" "xxhash" "zlib" "zstd")) - ;; Clean up source. + ;; Clean up the source. (for-each delete-file - (find-files "." ".*\\.(bin|dsy|exe|jar|rar)$")) + (find-files + "." + (lambda (file _) + (and (string-match "\\.(bin|dsy|exe|jar|rar)$" file) + ;; Preserve the important wc24 .bin + ;; configuration *data* files. + (not (member (basename file) + '("misc.bin" + "nwc24dl.bin" + "nwc24fl.bin" + "nwc24fls.bin"))))))) ;; Do not attempt to include now-missing directories. (substitute* "CMakeLists.txt" ((".*add_subdirectory.*Externals/enet.*") "") @@ -371,7 +383,30 @@ (define-public dolphin-emu "FileSystemTest" "PowerPCTest" "VertexLoaderTest") - "|"))))))) + "|")))))) + (add-before 'install 'build-codeloader.bin + (lambda _ + (with-directory-excursion "../source/docs" + ;; The following command-line is adapted from the example in + ;; codehandler.s. + (invoke "powerpc-linux-gnu-gcc" "-mpowerpc" "-mbig" + "codehandler.s" "-nostartfiles" "-nodefaultlibs" + "-nostdlib" "-T" "codehandler.ld" + "-o" "codehandler.bin") + (copy-file "codehandler.bin" "../Data/Sys/codehandler.bin")))) + (add-before 'install 'build-dsp_rom.bin + (lambda _ + ;; Ensure dsptool is on PATH. + (setenv "PATH" (string-append (getenv "PATH") ":" + (getcwd) "/Binaries")) + (with-directory-excursion "../source" + (invoke "dsptool" "-o" "Data/Sys/GC/dsp_rom.bin" + "docs/DSP/free_dsp_rom/dsp_rom.ds")))) + (add-before 'install 'build-dsp_coefs.bin + (lambda _ + (with-directory-excursion "../source" + (invoke "python3" "docs/DSP/free_dsp_rom/generate_coefs.py") + (rename-file "dsp_coef.bin" "Data/Sys/GC/dsp_coef.bin"))))) ;; The FindGTK2 cmake script only checks hardcoded directories for ;; glib/gtk headers. Also add some include directories via the CXX ;; flags to let GCC find some headers not actively searched by the @@ -380,6 +415,7 @@ (define-public dolphin-emu #~(list (string-append "-DCMAKE_CXX_FLAGS=" "-I" (search-input-directory %build-inputs "include/soundtouch")) + "-DDSPTOOL=ON" (string-append "-DX11_INCLUDE_DIR=" #$(this-package-input "libx11") "/include") @@ -389,7 +425,11 @@ (define-public dolphin-emu "-DX11_FOUND=1") #:test-target "unittests")) (native-inputs - (list gettext-minimal pkg-config)) + (list (cross-gcc "powerpc-linux-gnu") + gettext-minimal + pkg-config + python-minimal + python-numpy)) (inputs (list alsa-lib ao From patchwork Fri Jan 17 04:45:54 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 37096 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 63F0927BBEA; Fri, 17 Jan 2025 04:47:30 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-6.6 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED,DKIM_VALID,FREEMAIL_FROM,MAILING_LIST_MULTI, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_VALIDITY_CERTIFIED,RCVD_IN_VALIDITY_RPBL, RCVD_IN_VALIDITY_SAFE,SPF_HELO_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id BC63227BBE9 for ; Fri, 17 Jan 2025 04:47:28 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tYeG9-0005Ik-RM; Thu, 16 Jan 2025 23:47:05 -0500 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 1tYeG8-0005IX-BQ for guix-patches@gnu.org; Thu, 16 Jan 2025 23:47:04 -0500 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 1tYeG7-0004z1-RX for guix-patches@gnu.org; Thu, 16 Jan 2025 23:47:03 -0500 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=6t4kuXyClQKJze4eGAb6xDSpbwyhGjhKCNkgPG0AL9M=; b=pPCnqF8SRD8ZpS8CmjbZR6wrFjq7qAg7xujiaRikhJam8Lt28tBFD/+STBiqwyWbdu0rlNrFDDDsQJHeGMKvm39xWEYW6JXgv4s6U1TTiKgv8JXS5ii5wAd4ko/LiQSjH+rgVxTagtg8nYjneIAW4WjgEYslndiJr+CB1oG7RimgsRu6WvZFX2xIy9Ver2G5bucRgwit+mzjys1+0SOgy/DHr2rsQtNEehWncsnUsqIQ3NBaFLZUQ2AsYr/Zk4mof4jB1KprUCj5NjiUUBvyDnZkorInQl8Cr9EJOohF8AmRPgokJgrONe6uVogMUrWYvjz8V3yOnJ09hu3Qi/QL2A==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1tYeG7-0001So-L3; Thu, 16 Jan 2025 23:47:03 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#75619] [PATCH 4/7] gnu: retroarch-minimal: Add search path for LIBRETRO_SYSTEM_DIRECTORY. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: adam.faiz@disroot.org, liliana.prikler@gmail.com, iyzsong@envs.net, guix-patches@gnu.org Resent-Date: Fri, 17 Jan 2025 04:47:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75619 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 75619@debbugs.gnu.org Cc: Maxim Cournoyer , Adam Faiz , Liliana Marie Prikler , =?utf-8?b?5a6L5paH5q2m?= X-Debbugs-Original-Xcc: Adam Faiz , Liliana Marie Prikler , =?utf-8?b?5a6L5paH5q2m?= Received: via spool by 75619-submit@debbugs.gnu.org id=B75619.17370892225602 (code B ref 75619); Fri, 17 Jan 2025 04:47:03 +0000 Received: (at 75619) by debbugs.gnu.org; 17 Jan 2025 04:47:02 +0000 Received: from localhost ([127.0.0.1]:35603 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tYeG5-0001SC-2W for submit@debbugs.gnu.org; Thu, 16 Jan 2025 23:47:01 -0500 Received: from mail-pl1-x62b.google.com ([2607:f8b0:4864:20::62b]:47469) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from ) id 1tYeG2-0001Rs-IY for 75619@debbugs.gnu.org; Thu, 16 Jan 2025 23:46:59 -0500 Received: by mail-pl1-x62b.google.com with SMTP id d9443c01a7336-21a7ed0155cso25779215ad.3 for <75619@debbugs.gnu.org>; Thu, 16 Jan 2025 20:46:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1737089212; x=1737694012; 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=6t4kuXyClQKJze4eGAb6xDSpbwyhGjhKCNkgPG0AL9M=; b=QahpLWGxevTRnBEEqS/rtzeK0IcQ32g1puB3y0vbNeYg3vI5M61msID56V4HIcuTLD 2acAWJouRMFZ4GHvKV+gHpHr0fgdSjZOhecxxJlpqiCG0O+2ZilmsX3nNW3iKE2HsVki zPk7acxjpXPd9taX5PqFOBlYHC7PKI/+XWdrry7I/1kqLjSLgNH3ySkGGI06pYmmkylG H0ZM1d6vRtjNUnNTrDO/7UgLQAEbgBMHI+9qr61ckc2zD/eXmLl6nEveUbdsm2MtDwGg Eh2DigAjhPaRPD5sJb3QaC7Xg3SB0J8oRP3vVWxYlV+OVbE7WkvsLLVxR76Mco9tWr7n oFzA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737089212; x=1737694012; 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=6t4kuXyClQKJze4eGAb6xDSpbwyhGjhKCNkgPG0AL9M=; b=QhaEHaZ4FMrcwYyChgAD1J2Lv0kFSGAblbIPfUx7UhU9pELFcTpAI/d2Fdc5zAKqyd edJ8/QzLSK1P5nXr1TprMJVsmYj9GoQnTxWMPAmwfPcejmIKDqjNdlP8tfRjG3FItqwf n917HjQsTCO1fnIrNIg2zV8emTJo3wjpGq8r1caUmDg2WZa6Jl4H6izGYbwFC7b/ktrK 2vL4fpqJRBkQhk+J79Ztj1EWz0nynE5XUzi27iIR6cTDYQXgbNzYnEuvlu17neEhcToQ FtvS98nylMorQqOVHLnVh2AHbPgCY8BwXAsYrOzWieL/nRvyA8Nl3OAkMgafOT2GlL9R 8eGA== X-Gm-Message-State: AOJu0Yxa1OsKRZdbzbwQhQcXo6bXcL5+GEAG3fudcKn9lStvKC6axvva dDUVm4OOrzTham9lBSOlkCtB17jvDWWur5Hty/WsS7EYke5wS0xRziWUuu8G X-Gm-Gg: ASbGncvt3C/IVllecjMwVP+ewtP/ClC1bkEYekYqLcPz72FcrVTesN8aesKOgphnMKO tQjhSJQ7IHvr7UxtZ6Elen8NHirc86VYmXHvV+WU1W5pUSyTeK/XQeZV5j6p8Is8M4r9pS5zMeK 5wfC4TGFFwjtdWFfBD3ttWc6KMvlphu+LUawdYhnrgfFsxmkUlxvriL8gneAEGXuycUY9kFTNAz a7Ml5O0i5qNckBNTZC59VeddVjIeAJYRIEgWRJuOwqv0xq8f70cSQNxUiT1fjUzRGiUJFeKqB0= X-Google-Smtp-Source: AGHT+IFhcjEB7r/+5OtzaQcW75PyKJg186wpkO5DkQCSCcr2sgx9NGKtInzIyL7YWB3ihdWl0W2Iiw== X-Received: by 2002:a05:6a20:394a:b0:1db:de38:294b with SMTP id adf61e73a8af0-1eb215fb30fmr2321371637.38.1737089212026; Thu, 16 Jan 2025 20:46:52 -0800 (PST) Received: from localhost.localdomain ([2405:6586:be0:0:c8ff:1707:9b9:af89]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-a9bdf57de17sm863935a12.77.2025.01.16.20.46.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 16 Jan 2025 20:46:51 -0800 (PST) From: Maxim Cournoyer Date: Fri, 17 Jan 2025 13:45:54 +0900 Message-ID: X-Mailer: git-send-email 2.47.1 In-Reply-To: References: MIME-Version: 1.0 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+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches This makes it possible to locate system files provided by libretro cores. * gnu/packages/patches/retroarch-improved-search-paths.patch: Extend patch. * gnu/packages/emulators.scm (retroarch-minimal) [native-search-paths]: Register new search path for the LIBRETRO_SYSTEM_DIRECTORY variable. Change-Id: I48f9a92608c0e36922ce9dcc9bbb61d6ca915002 --- gnu/packages/emulators.scm | 4 + .../retroarch-improved-search-paths.patch | 88 ++++++++++++++----- 2 files changed, 68 insertions(+), 24 deletions(-) diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm index 2486485805..08af04ccfe 100644 --- a/gnu/packages/emulators.scm +++ b/gnu/packages/emulators.scm @@ -2632,6 +2632,10 @@ (define-public retroarch-minimal (variable "LIBRETRO_AUTOCONFIG_DIRECTORY") (separator #f) ;single entry (files '("share/libretro/autoconfig"))) + (search-path-specification + (variable "LIBRETRO_SYSTEM_DIRECTORY") + (separator #f) ;single entry + (files '("share/libretro/system"))) (search-path-specification (variable "LIBRETRO_VIDEO_FILTER_DIRECTORY") (separator #f) ;single entry diff --git a/gnu/packages/patches/retroarch-improved-search-paths.patch b/gnu/packages/patches/retroarch-improved-search-paths.patch index 6fcd4745ac..8d70514bd8 100644 --- a/gnu/packages/patches/retroarch-improved-search-paths.patch +++ b/gnu/packages/patches/retroarch-improved-search-paths.patch @@ -4,22 +4,23 @@ variable. Upstream-status: https://github.com/libretro/RetroArch/pull/17054 diff --git a/configuration.c b/configuration.c -index 5808a3f21c..0cc2909102 100644 +index 5808a3f21c..2bc9abf11c 100644 --- a/configuration.c +++ b/configuration.c -@@ -3573,6 +3573,11 @@ static bool config_load_file(global_t *global, +@@ -3573,6 +3573,12 @@ static bool config_load_file(global_t *global, { unsigned i; char tmp_str[PATH_MAX_LENGTH]; + char* libretro_directory = NULL; + char* libretro_assets_directory = NULL; + char* libretro_autoconfig_directory = NULL; ++ char* libretro_system_directory = NULL; + char* libretro_video_filter_directory = NULL; + char* libretro_video_shader_directory = NULL; static bool first_load = true; bool without_overrides = false; unsigned msg_color = 0; -@@ -3848,12 +3853,6 @@ static bool config_load_file(global_t *global, +@@ -3848,12 +3854,6 @@ static bool config_load_file(global_t *global, strlcpy(path_settings[i].ptr, tmp_str, PATH_MAX_LENGTH); } @@ -32,7 +33,7 @@ index 5808a3f21c..0cc2909102 100644 #ifdef RARCH_CONSOLE if (conf) video_driver_load_settings(global, conf); -@@ -3861,6 +3860,20 @@ static bool config_load_file(global_t *global, +@@ -3861,6 +3861,26 @@ static bool config_load_file(global_t *global, /* Post-settings load */ @@ -49,11 +50,17 @@ index 5808a3f21c..0cc2909102 100644 + configuration_set_string(settings, + settings->paths.directory_autoconfig, + libretro_autoconfig_directory); ++ ++ libretro_system_directory = getenv("LIBRETRO_SYSTEM_DIRECTORY"); ++ if (libretro_system_directory) ++ configuration_set_string(settings, ++ settings->paths.directory_system, ++ libretro_system_directory); + if ( (rarch_flags & RARCH_FLAGS_HAS_SET_USERNAME) && (override_username)) { -@@ -4032,15 +4045,27 @@ static bool config_load_file(global_t *global, +@@ -4032,15 +4052,27 @@ static bool config_load_file(global_t *global, *settings->paths.path_menu_wallpaper = '\0'; if (string_is_equal(settings->paths.path_rgui_theme_preset, "default")) *settings->paths.path_rgui_theme_preset = '\0'; @@ -85,18 +92,18 @@ index 5808a3f21c..0cc2909102 100644 #ifdef _3DS if (string_is_equal(settings->paths.directory_bottom_assets, "default")) diff --git a/docs/retroarch.6 b/docs/retroarch.6 -index 7478040e17..f864e0e0d5 100644 +index 7478040e17..bc1ac8dfff 100644 --- a/docs/retroarch.6 +++ b/docs/retroarch.6 @@ -1,6 +1,6 @@ .\" retroarch.6: -.TH "RETROARCH" "6" "November 1, 2011" "RETROARCH" "System Manager's Manual: retroarch" -+.TH "RETROARCH" "6" "September 28, 2024" "RETROARCH" "System Manager's Manual: retroarch" ++.TH "RETROARCH" "6" "January 16, 2025" "RETROARCH" "System Manager's Manual: retroarch" .SH NAME -@@ -239,3 +239,36 @@ Disables all kinds of content patching. +@@ -239,3 +239,42 @@ Disables all kinds of content patching. .TP \fB-D, --detach\fR Detach from the current console. This is currently only relevant for Microsoft Windows. @@ -123,6 +130,12 @@ index 7478040e17..f864e0e0d5 100644 +"joypad_autoconfig_dir" configuration file option. + +.TP ++\fBLIBRETRO_SYSTEM_DIRECTORY\fR ++Specify the directory where RetroArch looks for system files, ++overriding the value of the "system_directory" configuration file ++option. ++ ++.TP +\fBLIBRETRO_VIDEO_FILTER_DIRECTORY\fR +Specify the directory where RetroArch looks for video filters, +overriding the value of the "video_filter_dir" configuration file @@ -134,21 +147,22 @@ index 7478040e17..f864e0e0d5 100644 +overriding the value of the "video_shader_dir" configuration file +option. diff --git a/frontend/drivers/platform_unix.c b/frontend/drivers/platform_unix.c -index c157d355a1..ddf0b5ca87 100644 +index c157d355a1..a8e957c7c2 100644 --- a/frontend/drivers/platform_unix.c +++ b/frontend/drivers/platform_unix.c -@@ -1324,6 +1324,10 @@ static void frontend_unix_get_env(int *argc, +@@ -1324,6 +1324,11 @@ static void frontend_unix_get_env(int *argc, { unsigned i; const char* libretro_directory = getenv("LIBRETRO_DIRECTORY"); + const char* libretro_assets_directory = getenv("LIBRETRO_ASSETS_DIRECTORY"); + const char* libretro_autoconfig_directory = getenv("LIBRETRO_AUTOCONFIG_DIRECTORY"); ++ const char* libretro_system_directory = getenv("LIBRETRO_SYSTEM_DIRECTORY"); + const char* libretro_video_filter_directory = getenv("LIBRETRO_VIDEO_FILTER_DIRECTORY"); + const char* libretro_video_shader_directory = getenv("LIBRETRO_VIDEO_SHADER_DIRECTORY"); #ifdef ANDROID int32_t major, minor, rel; char device_model[PROP_VALUE_MAX] = {0}; -@@ -1765,12 +1769,20 @@ static void frontend_unix_get_env(int *argc, +@@ -1765,12 +1770,20 @@ static void frontend_unix_get_env(int *argc, "cores", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO])); else #endif @@ -174,7 +188,7 @@ index c157d355a1..ddf0b5ca87 100644 #ifdef ASSETS_DIR if (path_is_directory(ASSETS_DIR "/assets")) fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_ASSETS], -@@ -1778,7 +1790,10 @@ static void frontend_unix_get_env(int *argc, +@@ -1778,7 +1791,10 @@ static void frontend_unix_get_env(int *argc, "assets", sizeof(g_defaults.dirs[DEFAULT_DIR_ASSETS])); else #endif @@ -186,7 +200,7 @@ index c157d355a1..ddf0b5ca87 100644 fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_ASSETS], "/usr/local/share/retroarch", "assets", sizeof(g_defaults.dirs[DEFAULT_DIR_ASSETS])); -@@ -1838,7 +1853,11 @@ static void frontend_unix_get_env(int *argc, +@@ -1838,7 +1854,11 @@ static void frontend_unix_get_env(int *argc, "filters/video", sizeof(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER])); else #endif @@ -199,7 +213,7 @@ index c157d355a1..ddf0b5ca87 100644 fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER], "/usr/local/share/retroarch", "filters/video", sizeof(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER])); -@@ -1872,8 +1891,13 @@ static void frontend_unix_get_env(int *argc, +@@ -1872,8 +1892,13 @@ static void frontend_unix_get_env(int *argc, "records", sizeof(g_defaults.dirs[DEFAULT_DIR_RECORD_OUTPUT])); fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_DATABASE], base_path, "database/rdb", sizeof(g_defaults.dirs[DEFAULT_DIR_DATABASE])); @@ -215,16 +229,33 @@ index c157d355a1..ddf0b5ca87 100644 fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CHEATS], base_path, "cheats", sizeof(g_defaults.dirs[DEFAULT_DIR_CHEATS])); fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_OVERLAY], base_path, +@@ -1892,8 +1917,13 @@ static void frontend_unix_get_env(int *argc, + "saves", sizeof(g_defaults.dirs[DEFAULT_DIR_SRAM])); + fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_SAVESTATE], base_path, + "states", sizeof(g_defaults.dirs[DEFAULT_DIR_SAVESTATE])); +- fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_SYSTEM], base_path, +- "system", sizeof(g_defaults.dirs[DEFAULT_DIR_SYSTEM])); ++ if (!string_is_empty(libretro_system_directory)) ++ strlcpy(g_defaults.dirs[DEFAULT_DIR_SYSTEM], ++ libretro_system_directory, ++ sizeof(g_defaults.dirs[DEFAULT_DIR_SYSTEM])); ++ else ++ fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_SYSTEM], base_path, ++ "system", sizeof(g_defaults.dirs[DEFAULT_DIR_SYSTEM])); + #endif + + #ifndef IS_SALAMANDER diff --git a/frontend/drivers/platform_win32.c b/frontend/drivers/platform_win32.c -index 26ed25c04f..0cc9a9dc95 100644 +index a1e5a93a32..0a51bc8df6 100644 --- a/frontend/drivers/platform_win32.c +++ b/frontend/drivers/platform_win32.c -@@ -565,24 +565,38 @@ static void frontend_win32_env_get(int *argc, char *argv[], +@@ -565,18 +565,33 @@ static void frontend_win32_env_get(int *argc, char *argv[], { const char *tmp_dir = getenv("TMP"); const char *libretro_directory = getenv("LIBRETRO_DIRECTORY"); + const char *libretro_assets_directory = getenv("LIBRETRO_ASSETS_DIRECTORY"); + const char* libretro_autoconfig_directory = getenv("LIBRETRO_AUTOCONFIG_DIRECTORY"); ++ const char* libretro_system_directory = getenv("LIBRETRO_SYSTEM_DIRECTORY"); + const char* libretro_video_filter_directory = getenv("LIBRETRO_VIDEO_FILTER_DIRECTORY"); + const char* libretro_video_shader_directory = getenv("LIBRETRO_VIDEO_SHADER_DIRECTORY"); if (!string_is_empty(tmp_dir)) @@ -256,14 +287,7 @@ index 26ed25c04f..0cc9a9dc95 100644 fill_pathname_expand_special(g_defaults.dirs[DEFAULT_DIR_CHEATS], ":\\cheats", sizeof(g_defaults.dirs[DEFAULT_DIR_CHEATS])); fill_pathname_expand_special(g_defaults.dirs[DEFAULT_DIR_DATABASE], - ":\\database\\rdb", sizeof(g_defaults.dirs[DEFAULT_DIR_DATABASE])); - fill_pathname_expand_special(g_defaults.dirs[DEFAULT_DIR_PLAYLIST], -- ":\\playlists", sizeof(g_defaults.dirs[DEFAULT_DIR_ASSETS])); -+ ":\\playlists", sizeof(g_defaults.dirs[DEFAULT_DIR_PLAYLIST])); - fill_pathname_expand_special(g_defaults.dirs[DEFAULT_DIR_RECORD_CONFIG], - ":\\config\\record", sizeof(g_defaults.dirs[DEFAULT_DIR_RECORD_CONFIG])); - fill_pathname_expand_special(g_defaults.dirs[DEFAULT_DIR_RECORD_OUTPUT], -@@ -605,12 +619,26 @@ static void frontend_win32_env_get(int *argc, char *argv[], +@@ -605,12 +620,26 @@ static void frontend_win32_env_get(int *argc, char *argv[], else fill_pathname_expand_special(g_defaults.dirs[DEFAULT_DIR_CORE], ":\\cores", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE])); @@ -296,3 +320,19 @@ index 26ed25c04f..0cc9a9dc95 100644 fill_pathname_expand_special(g_defaults.dirs[DEFAULT_DIR_CORE_ASSETS], ":\\downloads", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_ASSETS])); fill_pathname_expand_special(g_defaults.dirs[DEFAULT_DIR_SCREENSHOT], +@@ -619,8 +648,13 @@ static void frontend_win32_env_get(int *argc, char *argv[], + ":\\saves", sizeof(g_defaults.dirs[DEFAULT_DIR_SRAM])); + fill_pathname_expand_special(g_defaults.dirs[DEFAULT_DIR_SAVESTATE], + ":\\states", sizeof(g_defaults.dirs[DEFAULT_DIR_SAVESTATE])); +- fill_pathname_expand_special(g_defaults.dirs[DEFAULT_DIR_SYSTEM], +- ":\\system", sizeof(g_defaults.dirs[DEFAULT_DIR_SYSTEM])); ++ if (!string_is_empty(libretro_system_directory)) ++ strlcpy(g_defaults.dirs[DEFAULT_DIR_SYSTEM], ++ libretro_system_directory, ++ sizeof(g_defaults.dirs[DEFAULT_DIR_SYSTEM])); ++ else ++ fill_pathname_expand_special(g_defaults.dirs[DEFAULT_DIR_SYSTEM], ++ ":\\system", sizeof(g_defaults.dirs[DEFAULT_DIR_SYSTEM])); + fill_pathname_expand_special(g_defaults.dirs[DEFAULT_DIR_LOGS], + ":\\logs", sizeof(g_defaults.dirs[DEFAULT_DIR_LOGS])); + From patchwork Fri Jan 17 04:45:55 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 37100 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id AF9B727BBEA; Fri, 17 Jan 2025 04:48:29 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-6.6 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED,DKIM_VALID,FREEMAIL_FROM,MAILING_LIST_MULTI, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_VALIDITY_CERTIFIED,RCVD_IN_VALIDITY_RPBL, RCVD_IN_VALIDITY_SAFE,SPF_HELO_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 5163127BBE2 for ; Fri, 17 Jan 2025 04:48:29 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tYeH5-0005a5-J5; Thu, 16 Jan 2025 23:48:03 -0500 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 1tYeH4-0005Zh-C1 for guix-patches@gnu.org; Thu, 16 Jan 2025 23:48:02 -0500 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 1tYeH3-00057n-PR for guix-patches@gnu.org; Thu, 16 Jan 2025 23:48:01 -0500 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=aHmn4PKaWcC3A7Bo8Pv4M4QjcDefH60JMP3ciIBz02U=; b=dtHb9f20Zt2pALs+VvwGUBCTI8yItay+vIzRvZMQ7oUiGlKhbNTxQz+zw4ufKTL0Ei3qMK+PuAOmO7LVGBwmznEA1fk2be1Mi1k/4q4tKiFbYmg4qASsc/MqkoouMLeRjiMl+8ozQDumIQwOH7vWtXBK5YU0z0Cbi5YKTRJA1+bHTYM8smsN9q19JSNf/RK7gS4qYPL3A25bAzef43MV+Hp5ep3Mr8VVzx5lOZIsLBmzfkBU8AslP4Jxof1MWw36DqGfrjWly9GJ7yeMpHZ2udwwSAyqorYNQW105Ki8niXdkTBj8x6bIoGTi7wB5ASVPpOiKwrcqzi8JwygJNLu4g==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1tYeH3-0001V4-KX; Thu, 16 Jan 2025 23:48:01 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#75619] [PATCH 5/7] gnu: Add libretro-dolphin-emu. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: adam.faiz@disroot.org, liliana.prikler@gmail.com, iyzsong@envs.net, guix-patches@gnu.org Resent-Date: Fri, 17 Jan 2025 04:48:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75619 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 75619@debbugs.gnu.org Cc: Maxim Cournoyer , Adam Faiz , Liliana Marie Prikler , =?utf-8?b?5a6L5paH5q2m?= X-Debbugs-Original-Xcc: Adam Faiz , Liliana Marie Prikler , =?utf-8?b?5a6L5paH5q2m?= Received: via spool by 75619-submit@debbugs.gnu.org id=B75619.17370892265668 (code B ref 75619); Fri, 17 Jan 2025 04:48:01 +0000 Received: (at 75619) by debbugs.gnu.org; 17 Jan 2025 04:47:06 +0000 Received: from localhost ([127.0.0.1]:35618 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tYeG9-0001TL-Up for submit@debbugs.gnu.org; Thu, 16 Jan 2025 23:47:06 -0500 Received: from mail-pl1-x631.google.com ([2607:f8b0:4864:20::631]:44346) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from ) id 1tYeG7-0001S1-Gz for 75619@debbugs.gnu.org; Thu, 16 Jan 2025 23:47:04 -0500 Received: by mail-pl1-x631.google.com with SMTP id d9443c01a7336-2164b662090so30575965ad.1 for <75619@debbugs.gnu.org>; Thu, 16 Jan 2025 20:47:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1737089216; x=1737694016; 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=aHmn4PKaWcC3A7Bo8Pv4M4QjcDefH60JMP3ciIBz02U=; b=TohDcv8D8wVZtzWue4ZLOYfYIMjgW+mmjCobofcMJJIG3MGRhXHggyknOcWACra+9O 2y4Qu1s+w3tpgKwK+UwtqTVLkytu6RI/rx0Sk79wg4/2LQgrMUl5z/4fHFT6JhFgN0nC LZ5Ds5MtErWaEVtW9rQXXNzxbwjzqHHzqa1u1t8+m8jp25YGbiPhwCgmPPGSXYYXD56o 3zKB2B/sqCDDEFEsOQQ3XLL2w3QYmGjUNMgdeXJ9wLepNIbDAtkaH5eEs9KgZ2vtl9gJ +HgyIhAaoRLMe8Gn6WWPFU3zbVMvUkJyfZQ0RnriKxavX+MqONj6h12G1wTHrbx5splP virQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737089216; x=1737694016; 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=aHmn4PKaWcC3A7Bo8Pv4M4QjcDefH60JMP3ciIBz02U=; b=GHG88dnXVzrTKDwn0Um2GdOquPHRpwGYHCVzNQaU10F//g68CuiElJMnUjPu6cbfag PYZ4okGZajQ6YFTqsDGIFhngz3kFNLUBLVTZG3t8ikyl7JAxh1UoW8/y4FGF833nlZKS g8BkSA0n+dItxz/eP5jA7ZA75W6uTp49wqYN6kQWua1a5OiO2KMcGEaliDLSqrFUryGx FkuRSil47p2ijsyWM/t8iVjXvm2q6nhFfEzB+6ajNq6+rYWDqK+79XqpEhdeYsLUufsE JfChSiDshLkFjH3klEXS2/ET4+Uac9k1MeO1JqteXRDFLrAJAeinySasb1QO0XE1X7cI D/Fw== X-Gm-Message-State: AOJu0YzORWv6VJ1h+e33Y3Y+p5l34SHC99gNG3CcLDlNGeHSnjpJDk9e hzdrCSIxm999SCYuSO6fHHhxpfnJNNpcHp310cpa1Tgiq+9f7XvgSwnoTkDr X-Gm-Gg: ASbGnctrMnabBSjeMnNCfrinGPIpEUCg1L85PmeXJBSRgK/3eLMn7mBxFkg/nA5ZwU+ EZPJRQVH7hFmDNGlcJyQr93+//okvTW96IUtVy/EZYceh+M5TJiTDeQFRZq5FiwUX2/AhQumfPv e1YrFpYHQchpF9I0dOKEXbl/BO6PysSN1xNaUyLZtVY7fEH/ULz+fpBJKeBVyO/WdI1KRAHB/Hd C5JK7n+xttndFDa3hdW7ETkLBxip4IksQWJLHhJWaE/qgrcY1LM/YyFfTvUbwm7vRWlT8jGmAg= X-Google-Smtp-Source: AGHT+IH2PerI69jaLdfKkHGi+T6+Gs49wlD8U/9fl5sNuuBu2y0/6N/G/StEGYNoiYh8UyTKP0JK1w== X-Received: by 2002:a05:6a20:258c:b0:1e1:a6a6:848 with SMTP id adf61e73a8af0-1eb214c7a75mr2183469637.25.1737089216530; Thu, 16 Jan 2025 20:46:56 -0800 (PST) Received: from localhost.localdomain ([2405:6586:be0:0:c8ff:1707:9b9:af89]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-a9bdf57de17sm863935a12.77.2025.01.16.20.46.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 16 Jan 2025 20:46:56 -0800 (PST) From: Maxim Cournoyer Date: Fri, 17 Jan 2025 13:45:55 +0900 Message-ID: <4c08249e6903a7cec93fdbb9973996d9719266ad.1737083128.git.maxim.cournoyer@gmail.com> X-Mailer: git-send-email 2.47.1 In-Reply-To: References: MIME-Version: 1.0 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+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/emulators.scm (libretro-dolphin-emu): New variable. Change-Id: Id05e1d17ff6927bb1492ce2816790f7d94f9e1b8 --- gnu/packages/emulators.scm | 51 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm index 08af04ccfe..e51b6b2ea2 100644 --- a/gnu/packages/emulators.scm +++ b/gnu/packages/emulators.scm @@ -481,6 +481,57 @@ (define-public dolphin-emu ;; dolphin/Data/Sys/GC/font_*.bin: Licensed under ASL2.0. (license (list license:gpl2+ license:asl2.0 license:fdl1.2+))))) +(define-public libretro-dolphin-emu + ;; There are no tag or release; use the latest commit. + (let ((commit "89a4df725d4eb24537728f7d655cddb1add25c18") + (revision "0")) + (package + (inherit dolphin-emu) + (name "libretro-dolphin-emu") + (version (git-version "5.0" revision commit)) + (source (origin + (inherit (package-source dolphin-emu)) + (method git-fetch) + (uri (git-reference + (url "https://github.com/libretro/dolphin") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1fvm6hy0ihc0j3sgv88a7ak08c0kyikmmiif827j981fy7zvglvz")))) + (arguments + (substitute-keyword-arguments (package-arguments dolphin-emu) + ((#:configure-flags flags ''()) + #~(cons "-DLIBRETRO=ON" #$flags)) + ((#:phases phases '%standard-phases) + #~(modify-phases #$phases + (add-after 'unpack 'deregister-bundled-sources + (lambda _ + (substitute* "CMakeLists.txt" + ((".*add_subdirectory.*Externals/curl.*") "") + ((".*add_subdirectory.*Externals/libpng.*") "")))) + (replace 'install + (lambda _ + (install-file "dolphin_libretro.so" + (string-append #$output "/lib/libretro")) + ;; The system data files are also required for the proper + ;; functioning of dolphin; without them, it crashes with + ;; segmentation faults and cannot save files to the memory + ;; card. + (let ((sysdir (string-append + #$output + "/share/libretro/system/dolphin-emu"))) + (mkdir-p sysdir) + (copy-recursively "../source/Data/Sys" + (string-append sysdir "/Sys"))))))))) + (inputs + ;; Delete large and extraneous inputs. + (modify-inputs (package-inputs dolphin-emu) + (delete "ffmpeg" + "gtk+" + "qtbase"))) + (synopsis "Libretro port of Dolphin, the Nintendo Wii/GameCube emulator")))) + (define-public dosbox (package (name "dosbox") From patchwork Fri Jan 17 04:45:56 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 37101 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 9310927BBEA; Fri, 17 Jan 2025 04:48:33 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-6.6 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED,DKIM_VALID,FREEMAIL_FROM,MAILING_LIST_MULTI, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_VALIDITY_CERTIFIED,RCVD_IN_VALIDITY_RPBL, RCVD_IN_VALIDITY_SAFE,SPF_HELO_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 9ABCF27BBE2 for ; Fri, 17 Jan 2025 04:48:32 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tYeH9-0005aq-6i; Thu, 16 Jan 2025 23:48:07 -0500 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 1tYeH4-0005Zm-I0 for guix-patches@gnu.org; Thu, 16 Jan 2025 23:48:02 -0500 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 1tYeH4-00057r-8p for guix-patches@gnu.org; Thu, 16 Jan 2025 23:48:02 -0500 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=Ko/XnLOVHfpC0ojE0HtzActGgqMbcQUWuc6GjbbvSF4=; b=VhQ0YdMow+dwex4UEJoQwClUM+MkKhaQ0gJ0RkjGXDZuKfHArdkYMVa2LASZSS0ylTvgecKyGrwoZBJAMOs4EoxLrO55grgGvI+g0vqhQCD7QKUvZo8yARJElNcO3PV+X/IEZ2nrRdIzmSV8vnXGFkjNYXuIW6zo3zEl4fxbVYpCelPaJQG3TRZn9VbbVpEaI1JwuK43mff9qhi5xmeF+B/tmyct4g+juhd8ARAs9563H8/Nn/AFtmy+cEbaakwX8wrfsVQHkwmbw746khdjQLbtJxU2AKG9zpUD9Ilyne6py2tH44y4ypSqC63wiTO+LMR3MqIIHkTcv6Gvm5uh3w==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1tYeH4-0001VC-2Y; Thu, 16 Jan 2025 23:48:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#75619] [PATCH 6/7] gnu: retroarch-minimal: Update to 1.20.0. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: adam.faiz@disroot.org, liliana.prikler@gmail.com, iyzsong@envs.net, guix-patches@gnu.org Resent-Date: Fri, 17 Jan 2025 04:48:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75619 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 75619@debbugs.gnu.org Cc: Maxim Cournoyer , Adam Faiz , Liliana Marie Prikler , =?utf-8?b?5a6L5paH5q2m?= X-Debbugs-Original-Xcc: Adam Faiz , Liliana Marie Prikler , =?utf-8?b?5a6L5paH5q2m?= Received: via spool by 75619-submit@debbugs.gnu.org id=B75619.17370892315693 (code B ref 75619); Fri, 17 Jan 2025 04:48:02 +0000 Received: (at 75619) by debbugs.gnu.org; 17 Jan 2025 04:47:11 +0000 Received: from localhost ([127.0.0.1]:35624 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tYeGE-0001Tk-MT for submit@debbugs.gnu.org; Thu, 16 Jan 2025 23:47:11 -0500 Received: from mail-pl1-x62e.google.com ([2607:f8b0:4864:20::62e]:48496) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from ) id 1tYeG9-0001S9-Kp for 75619@debbugs.gnu.org; Thu, 16 Jan 2025 23:47:07 -0500 Received: by mail-pl1-x62e.google.com with SMTP id d9443c01a7336-21bc1512a63so33492305ad.1 for <75619@debbugs.gnu.org>; Thu, 16 Jan 2025 20:47:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1737089219; x=1737694019; 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=Ko/XnLOVHfpC0ojE0HtzActGgqMbcQUWuc6GjbbvSF4=; b=H0XnzCAbMrDsbcRiUO7hOz1rifupXMTF9yAgPLYIz20jt9ySSJxQFze0l5kH/LenHb 14LUlyk9UEJwg2xQWtE6ymylPnBuyALgA1oGUNu+FpjAOI9J7W/IjMsmWsGRUGCM/M6k Puoh8/2JWcEZowAD918EJSNERiau3ouqbyoBS+HWgVYledI24Q8UEImDWDVZPejTSaBv 2V+8xCPY2RXYo/DuMMlZ5rVUTyKJhcWf5KEU+GRB6r37XSf4WuBi9dkfYcUqOQGfbq8M PwbyVi36UL8f2HDOADTJB51+T66Ig5BQMs5S8yQvZw/c31PQ1rvNoe3heuIf5DSvaxQI SH4A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737089219; x=1737694019; 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=Ko/XnLOVHfpC0ojE0HtzActGgqMbcQUWuc6GjbbvSF4=; b=v+Wj9dxcwrAsbBsgZIE7f8K5+vlqzvuT+mGxHWmemdu0d9R3pSUdm4v4sOClMcdb7M oBTLSApONeFNtn/BxAXUqYMopxA6TRPXlxDmCnAV5vScN296eB7JcVe332VlwVR+JIOd 8rJBBkw5H2ZN3IvOCSRSvHG0lEsCioiMNkDke34rxxrtKLolO0yOEwCvRu0UmugyTLHa ihnDrLocAJu73SEnxKgSRrNX1XsT5eZFDbQrnqRerluRTDc1TuQDjoStYfchS5hQZ4Ci JknB95sfA4CZuV31B972GkapsqFupPbtrFnf1PsLlX8sldRESFLu//ArYMVzqQwsi9H+ 7CCA== X-Gm-Message-State: AOJu0Yz5YEN3pPkMsK7QXqK34n/NKJdEHGjhX0/UEErVgEkR39y7EbeO b6J1a4xjN4PSQvNN2JY8nxOXUy8M/zN8ojppkK9CIUryMww6Q4+sD1iqlEig X-Gm-Gg: ASbGncvq2Rsx/0QT9vmgVcuFDqGTI/htmWoyy6xMHhVmGAZ3Q4yQ7jWeu6R8eC6zjAF o7+Uoo9nhm2VSJVJ7UcJNpO+nM2c3CaSQc8toA1R1PK61smvOKAkndfOVHtJxfUzCHb7igig7PR y9PM2Z/KRzWrnbUnMyfYFi9TxQch5sDNPoFivRPYK4vtOVuDiWnLFnAb3NVM2G1GxC2TZZMa8hq Faq8V8XSjE0M9rVtyG62TK7iMEK64n7QKlkFK5ijy71DDAWfvuzsM1q6AYWse0U/8RoK+pnhS8= X-Google-Smtp-Source: AGHT+IGmIe64omuTSRaw7mw15uY1lF5tu3oaIyKb9imqvvwyOc0580V9UE37fd2xrC935NIs3wBh3g== X-Received: by 2002:a05:6a20:72a1:b0:1dc:2365:4d7d with SMTP id adf61e73a8af0-1eb2148dfedmr1909288637.16.1737089218552; Thu, 16 Jan 2025 20:46:58 -0800 (PST) Received: from localhost.localdomain ([2405:6586:be0:0:c8ff:1707:9b9:af89]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-a9bdf57de17sm863935a12.77.2025.01.16.20.46.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 16 Jan 2025 20:46:58 -0800 (PST) From: Maxim Cournoyer Date: Fri, 17 Jan 2025 13:45:56 +0900 Message-ID: <24bea41b98fa9c4c62120051c34d82cc6a573539.1737083128.git.maxim.cournoyer@gmail.com> X-Mailer: git-send-email 2.47.1 In-Reply-To: References: MIME-Version: 1.0 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+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/emulators.scm (retroarch-minimal): Update to 1.20.0. Change-Id: I3b4121d2520ee08a9d8454f2666ed30c140ced5b --- gnu/packages/emulators.scm | 328 ++++++++++++++++++------------------- 1 file changed, 163 insertions(+), 165 deletions(-) diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm index e51b6b2ea2..88de3dbd8a 100644 --- a/gnu/packages/emulators.scm +++ b/gnu/packages/emulators.scm @@ -2536,177 +2536,175 @@ (define-public libretro-slang-shaders license:unlicense))))) (define-public retroarch-minimal - (let ((commit "48b71d5cf8a070e785e2302d8fe241a7c2180fdd") - (revision "1")) - (package - (name "retroarch-minimal") - (version "1.19.1") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/libretro/RetroArch") - (commit commit))) - (snippet - #~(begin - (use-modules (guix build utils) - (ice-9 ftw) - (srfi srfi-26)) - ;; XXX: 'delete-all-but' is copied from the turbovnc package. - (define (delete-all-but directory . preserve) - (define (directory? x) - (and=> (stat x #f) - (compose (cut eq? 'directory <>) stat:type))) - (with-directory-excursion directory - (let* ((pred - (negate (cut member <> (append '("." "..") preserve)))) - (items (scandir "." pred))) - (for-each (lambda (item) - (if (directory? item) - (delete-file-recursively item) - (delete-file item))) - items)))) - ;; Remove as much bundled sources as possible, shaving off about - ;; 65 MiB. - (delete-all-but "deps" - "feralgamemode" ;used in platform_unix.c - "mbedtls" ;further refined below - "yxml") ;used in rxml.c - ;; This is an old root certificate used in net_socket_ssl_mbed.c, - ;; not actually from mbedtls. - (delete-all-but "deps/mbedtls" "cacert.h"))) - (patches (search-patches "retroarch-improved-search-paths.patch" - "retroarch-unbundle-spirv-cross.patch")) - (file-name (git-file-name name version)) - (sha256 - (base32 "13hgg4pxkpwlcmmyp9npr9k9cb94waqiyjpy2jzs8m9rc7xl2ap9")))) - (build-system gnu-build-system) - (arguments - (list - #:tests? #f ; no tests - #:phases - #~(modify-phases %standard-phases - (replace 'configure - (lambda* (#:key inputs #:allow-other-keys) - ;; Hard-code some store file names. - (substitute* "gfx/common/vulkan_common.c" - (("libvulkan.so") - (search-input-file inputs "lib/libvulkan.so"))) - (substitute* "gfx/common/wayland/generate_wayland_protos.sh" - (("/usr/local/share/wayland-protocols") - (search-input-directory inputs "share/wayland-protocols"))) + (package + (name "retroarch-minimal") + (version "1.20.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/libretro/RetroArch") + (commit (string-append "v" version)))) + (snippet + #~(begin + (use-modules (guix build utils) + (ice-9 ftw) + (srfi srfi-26)) + ;; XXX: 'delete-all-but' is copied from the turbovnc package. + (define (delete-all-but directory . preserve) + (define (directory? x) + (and=> (stat x #f) + (compose (cut eq? 'directory <>) stat:type))) + (with-directory-excursion directory + (let* ((pred + (negate (cut member <> (append '("." "..") preserve)))) + (items (scandir "." pred))) + (for-each (lambda (item) + (if (directory? item) + (delete-file-recursively item) + (delete-file item))) + items)))) + ;; Remove as much bundled sources as possible, shaving off about + ;; 65 MiB. + (delete-all-but "deps" + "feralgamemode" ;used in platform_unix.c + "mbedtls" ;further refined below + "yxml") ;used in rxml.c + ;; This is an old root certificate used in net_socket_ssl_mbed.c, + ;; not actually from mbedtls. + (delete-all-but "deps/mbedtls" "cacert.h"))) + (patches (search-patches "retroarch-improved-search-paths.patch" + "retroarch-unbundle-spirv-cross.patch")) + (file-name (git-file-name name version)) + (sha256 + (base32 "0yc16j3g2g0if64xqd7qr4dza8rw10x0zypwbl92y735825p87qi")))) + (build-system gnu-build-system) + (arguments + (list + #:tests? #f ; no tests + #:phases + #~(modify-phases %standard-phases + (replace 'configure + (lambda* (#:key inputs #:allow-other-keys) + ;; Hard-code some store file names. + (substitute* "gfx/common/vulkan_common.c" + (("libvulkan.so") + (search-input-file inputs "lib/libvulkan.so"))) + (substitute* "gfx/common/wayland/generate_wayland_protos.sh" + (("/usr/local/share/wayland-protocols") + (search-input-directory inputs "share/wayland-protocols"))) - ;; Without HLSL, we can still enable GLSLANG and Vulkan support. - (substitute* "qb/config.libs.sh" - (("[$]HAVE_GLSLANG_HLSL") "notcare")) + ;; Without HLSL, we can still enable GLSLANG and Vulkan support. + (substitute* "qb/config.libs.sh" + (("[$]HAVE_GLSLANG_HLSL") "notcare")) - ;; The configure script does not yet accept the extra arguments - ;; (like ‘CONFIG_SHELL=’) passed by the default configure phase. - (invoke - "./configure" - #$@(if (string-prefix? "armhf" (or (%current-target-system) - (%current-system))) - '("--enable-neon" "--enable-floathard") - '()) - (string-append "--prefix=" #$output) - ;; D-Bus support is required for 'suspend screensaver' option - ;; to work. - "--enable-dbus" - ;; Non-free software are available through the core updater, - ;; disable it. See . - "--disable-update_cores" - "--disable-update_core_info" - "--disable-online_updater" - ;; The assets are provided via the `retroarch-assets' package. - "--disable-update_assets" - "--disable-builtinmbedtls" - "--disable-builtinbearssl" - "--disable-builtinzlib" - "--disable-builtinflac" - "--disable-builtinglslang" - "--disable-builtinspirv_cross" - ;; These are disabled to avoid requiring the bundled - ;; dependencies. - "--disable-7zip" - "--disable-cheevos" - "--disable-crtswitchres" - "--disable-discord" - "--disable-dr_mp3" - "--disable-ibxm" - "--disable-stb_font" - "--disable-stb_image" - "--disable-stb_vorbis" - "--disable-xdelta")))))) - (native-inputs - (list pkg-config - wayland-protocols - which)) - (inputs - (list alsa-lib - dbus - eudev - ffmpeg - flac - fontconfig - freetype - glslang - libxinerama - libxkbcommon - libxml2 - libxrandr - libxv - mbedtls-lts - mesa - openal - openssl - pulseaudio - python - qtbase-5 - sdl2 - spirv-cross - spirv-headers - spirv-tools - v4l-utils - vulkan-loader - wayland - zlib)) - (native-search-paths - (list (search-path-specification - (variable "LIBRETRO_DIRECTORY") - (separator #f) ;single entry - (files '("lib/libretro"))) - (search-path-specification - (variable "LIBRETRO_ASSETS_DIRECTORY") - (separator #f) ;single entry - (files '("share/libretro/assets"))) - (search-path-specification - (variable "LIBRETRO_AUTOCONFIG_DIRECTORY") - (separator #f) ;single entry - (files '("share/libretro/autoconfig"))) - (search-path-specification - (variable "LIBRETRO_SYSTEM_DIRECTORY") - (separator #f) ;single entry - (files '("share/libretro/system"))) - (search-path-specification - (variable "LIBRETRO_VIDEO_FILTER_DIRECTORY") - (separator #f) ;single entry - (files '("share/libretro/filters/video"))) - (search-path-specification - (variable "LIBRETRO_VIDEO_SHADER_DIRECTORY") - (separator #f) ;single entry - (files '("share/libretro/shaders"))))) - (home-page "https://www.libretro.com/") - (synopsis "Reference frontend for the libretro API") - (description - "Libretro is a simple but powerful development interface that allows for + ;; The configure script does not yet accept the extra arguments + ;; (like ‘CONFIG_SHELL=’) passed by the default configure phase. + (invoke + "./configure" + #$@(if (string-prefix? "armhf" (or (%current-target-system) + (%current-system))) + '("--enable-neon" "--enable-floathard") + '()) + (string-append "--prefix=" #$output) + ;; D-Bus support is required for 'suspend screensaver' option + ;; to work. + "--enable-dbus" + ;; Non-free software are available through the core updater, + ;; disable it. See . + "--disable-update_cores" + "--disable-update_core_info" + "--disable-online_updater" + ;; The assets are provided via the `retroarch-assets' package. + "--disable-update_assets" + "--disable-builtinmbedtls" + "--disable-builtinbearssl" + "--disable-builtinzlib" + "--disable-builtinflac" + "--disable-builtinglslang" + "--disable-builtinspirv_cross" + ;; These are disabled to avoid requiring the bundled + ;; dependencies. + "--disable-7zip" + "--disable-cheevos" + "--disable-crtswitchres" + "--disable-discord" + "--disable-dr_mp3" + "--disable-ibxm" + "--disable-stb_font" + "--disable-stb_image" + "--disable-stb_vorbis" + "--disable-xdelta")))))) + (native-inputs + (list pkg-config + wayland-protocols + which)) + (inputs + (list alsa-lib + dbus + eudev + ffmpeg + flac + fontconfig + freetype + glslang + libxinerama + libxkbcommon + libxml2 + libxrandr + libxv + mbedtls-lts + mesa + openal + openssl + pulseaudio + python + qtbase-5 + sdl2 + spirv-cross + spirv-headers + spirv-tools + v4l-utils + vulkan-loader + wayland + zlib)) + (native-search-paths + (list (search-path-specification + (variable "LIBRETRO_DIRECTORY") + (separator #f) ;single entry + (files '("lib/libretro"))) + (search-path-specification + (variable "LIBRETRO_ASSETS_DIRECTORY") + (separator #f) ;single entry + (files '("share/libretro/assets"))) + (search-path-specification + (variable "LIBRETRO_AUTOCONFIG_DIRECTORY") + (separator #f) ;single entry + (files '("share/libretro/autoconfig"))) + (search-path-specification + (variable "LIBRETRO_SYSTEM_DIRECTORY") + (separator #f) ;single entry + (files '("share/libretro/system"))) + (search-path-specification + (variable "LIBRETRO_VIDEO_FILTER_DIRECTORY") + (separator #f) ;single entry + (files '("share/libretro/filters/video"))) + (search-path-specification + (variable "LIBRETRO_VIDEO_SHADER_DIRECTORY") + (separator #f) ;single entry + (files '("share/libretro/shaders"))))) + (home-page "https://www.libretro.com/") + (synopsis "Reference frontend for the libretro API") + (description + "Libretro is a simple but powerful development interface that allows for the easy creation of emulators, games and multimedia applications that can plug straight into any libretro-compatible frontend. RetroArch is the official reference frontend for the libretro API, currently used by most as a modular multi-system game/emulator system.") - (license (list license:gpl3+ ;for RetroArch itself - license:asl2.0 ;SPIRV-Cross - license:expat ;yxml - license:bsd-3))))) ;feragamemode + (license (list license:gpl3+ ;for RetroArch itself + license:asl2.0 ;SPIRV-Cross + license:expat ;yxml + license:bsd-3)))) ;feragamemode (define-public retroarch (package From patchwork Fri Jan 17 04:45:57 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Maxim Cournoyer X-Patchwork-Id: 37102 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 87E0727BBE9; Fri, 17 Jan 2025 04:48:30 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-6.6 required=5.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED,DKIM_VALID,FREEMAIL_FROM,MAILING_LIST_MULTI, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_VALIDITY_CERTIFIED,RCVD_IN_VALIDITY_RPBL, RCVD_IN_VALIDITY_SAFE,SPF_HELO_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id BE47D27BBE2 for ; Fri, 17 Jan 2025 04:48:29 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tYeH6-0005aU-Ib; Thu, 16 Jan 2025 23:48:04 -0500 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 1tYeH5-0005Zz-EQ for guix-patches@gnu.org; Thu, 16 Jan 2025 23:48:03 -0500 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 1tYeH5-000585-5x for guix-patches@gnu.org; Thu, 16 Jan 2025 23:48:03 -0500 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=nJ6xdwFin98/8VbCFfWyxM9JkD5JW37rLj13cnLD+cI=; b=bbq86e+VQuI1R1ZfH3RLIJnNsbXbOG5txedsdoDQ4/3Hhh924zwVic0ZrJBmZ+RGmw5sEGJQJBYOuI2/Vpq3JBNf1WAIGrgmFszLuPIRHnvn+Z7ng01Jg/vIYYSm94R7B8VPxiTG6HritGr7jRHDBCnLfnytB+EmAONtSiIJT6IeMxKlLxBDMC4vdx4lgy9GI5y9vDuzoC1fwUJDzQxcXhrv5C0dGOFofMxmetELcXKV/vpSHHEbio0BIf6ZGBAreIcgWztsL8T+4L9yslEsDHAJ7Z2by8RLBhsPhZu6+uafU+VdnnDnwyjISiYYGIKmc6D6rEat4lsmk/JNCgY5Xg==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1tYeH4-0001VN-IS; Thu, 16 Jan 2025 23:48:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#75619] [PATCH 7/7] gnu: retroarch-core-info: Update to 1.20.0. Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: adam.faiz@disroot.org, liliana.prikler@gmail.com, iyzsong@envs.net, guix-patches@gnu.org Resent-Date: Fri, 17 Jan 2025 04:48:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75619 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 75619@debbugs.gnu.org Cc: Maxim Cournoyer , Adam Faiz , Liliana Marie Prikler , =?utf-8?b?5a6L5paH5q2m?= X-Debbugs-Original-Xcc: Adam Faiz , Liliana Marie Prikler , =?utf-8?b?5a6L5paH5q2m?= Received: via spool by 75619-submit@debbugs.gnu.org id=B75619.17370892365705 (code B ref 75619); Fri, 17 Jan 2025 04:48:02 +0000 Received: (at 75619) by debbugs.gnu.org; 17 Jan 2025 04:47:16 +0000 Received: from localhost ([127.0.0.1]:35626 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tYeGJ-0001Tx-PR for submit@debbugs.gnu.org; Thu, 16 Jan 2025 23:47:16 -0500 Received: from mail-pl1-x632.google.com ([2607:f8b0:4864:20::632]:53618) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from ) id 1tYeGB-0001SP-Lb for 75619@debbugs.gnu.org; Thu, 16 Jan 2025 23:47:10 -0500 Received: by mail-pl1-x632.google.com with SMTP id d9443c01a7336-21619108a6bso27693435ad.3 for <75619@debbugs.gnu.org>; Thu, 16 Jan 2025 20:47:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1737089221; x=1737694021; 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=nJ6xdwFin98/8VbCFfWyxM9JkD5JW37rLj13cnLD+cI=; b=DF31O+KgMZ8vmNSBCEhcUna5zfazlJfWaaHvIZvfguc57jXp8Oa/DNX1Dy4mdOa0Rn iZB47fOJQj5mrkQ7cUL5p79qnCSpmQ0/qGEfvDPaj8g5X0jr/b4SVBD0LdbvtqQvoG8R DDXuEXRf+QOnFBCuD2YYbUxXMSF/1rmuhAG9+p8D6463wCEV3CWFkuy8OtogHK1ts7eW qnUuhLbZcydgzlCSKL+D365LWDOtLrnn1LUiA0sqqUVeRLDG1RVuB8QUFY8ZOglaAEgq NNd0U1tDr/tEjSmrwgyF08LbXfGQFC2m6ERSDyfYT0pmoE1Q/EnAX2inNw366D7TibtY Jpfg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737089221; x=1737694021; 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=nJ6xdwFin98/8VbCFfWyxM9JkD5JW37rLj13cnLD+cI=; b=w3nxcDEwLbnExfyJBjhOmzIO+hfD9Q2ehq2YNzsgkXN3COa0E8qcQJgDSib9lrnK6f 9aBd3lBrDe9DFqWiLHuLtFDWFxGefCUGgLA16njhGqTKlbPwPDwaP8GJtGlY1wLIZrn7 sPKiFYSnBwemvJIehHL8YF0iN2p49i812ZEyOl8G4FsUAraEmlsZ2hmDaAS8/9RZfej1 Yw9zZUB3wrh3XNq61jW8c9Mn8LY4dV0SSnYYQDfk4tsTSG/+ggbSYJkgqX4U1mEZe8ed Gp4DONrMvAyAK+04Z8/bfLIuFdcSufLJfk5re+TFYY9Sb2ymG7y2KXSprREwcyANFhoR tTqQ== X-Gm-Message-State: AOJu0YwWNQZg7D4scg+iGlWmzqNeqlejI5/+bXQb5rBtHNP5OnVkPAEO vgItP8TOU2DfY/BRUpanmVARdmapuyr6FOQ6rTHXIe7j3asgJcPcDdWIGjWz X-Gm-Gg: ASbGnctzxIK7iZFXuyFD+ZXRmzYyEZf/H7va0bNLOf6h8r6TJiLK5O15olblU/u0r74 IeLHIsQe1a/0FHT0hyHtycKeYXQKG9Q99IineiXhkgzNiCqPx91wd0/eRw3p8E5sq+0nIiQ1DGX oWecZRz1djArCZA9L/56Sg1p+uAnbNuwL2GJD6mh6ddxeyWPtrGjNEvNRtigX4XEJXOLaSU85v2 dw97IXVta11iUrrn560QuUHtSDoBXPZWym3plkXwD6icwoHAZRp/ISUj5R5z8+G5l9VzsagnsQ= X-Google-Smtp-Source: AGHT+IH6k6kRkWWdlsLxQEyHsghIEA7bO07DnjzHGr21rA2yXPO4XroS8jGoVcWrfa4P5r4lceA3SQ== X-Received: by 2002:a05:6a00:8013:b0:725:8c0f:6fa3 with SMTP id d2e1a72fcca58-72dafbaae38mr2230124b3a.22.1737089220602; Thu, 16 Jan 2025 20:47:00 -0800 (PST) Received: from localhost.localdomain ([2405:6586:be0:0:c8ff:1707:9b9:af89]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-a9bdf57de17sm863935a12.77.2025.01.16.20.46.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 16 Jan 2025 20:47:00 -0800 (PST) From: Maxim Cournoyer Date: Fri, 17 Jan 2025 13:45:57 +0900 Message-ID: <7f465086dffd3f104ff82a193aab7bda593f2e93.1737083128.git.maxim.cournoyer@gmail.com> X-Mailer: git-send-email 2.47.1 In-Reply-To: References: MIME-Version: 1.0 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+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/emulators.scm (retroarch-core-info): Update to 1.20.0. Change-Id: I85eec43eedf24df44b5d486a2410652ad87536db --- gnu/packages/emulators.scm | 42 ++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 22 deletions(-) diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm index 88de3dbd8a..37637fc345 100644 --- a/gnu/packages/emulators.scm +++ b/gnu/packages/emulators.scm @@ -1780,30 +1780,28 @@ (define-public retroarch-assets (define-public retroarch-core-info ;; Use the latest commit, to get recent additions such as bsnes-jg. - (let ((commit "c0e7b76d02504754de67a1318f93089f1e29f15f") - (revision "0")) - (package - (name "retroarch-core-info") - (version (git-version "1.19.0" revision commit)) - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/libretro/libretro-core-info") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "11xpy3zhy2smp4a70fc0r1b76mvmjyabkaaipifsxm3j25drki5z")))) - (build-system copy-build-system) - (arguments - (list #:install-plan #~'(("." "lib/libretro/" - #:include-regexp ("\\.info$"))))) - (home-page "https://github.com/libretro/libretro-core-info") - (synopsis "Libretro core info files") - (description "This is a versioned snapshot of the files containing + (package + (name "retroarch-core-info") + (version "1.20.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/libretro/libretro-core-info") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1rfvp0lkv99jgpfyb9pp6vrh1i1974p3lckh93y1bibdizyxmwjg")))) + (build-system copy-build-system) + (arguments + (list #:install-plan #~'(("." "lib/libretro/" + #:include-regexp ("\\.info$"))))) + (home-page "https://github.com/libretro/libretro-core-info") + (synopsis "Libretro core info files") + (description "This is a versioned snapshot of the files containing metadata about each known libretro core. The snapshot is taken from the @url{https://github.com/libretro/libretro-super, libretro-super} repository.") - (license license:expat)))) + (license license:expat))) (define-public retroarch-joypad-autoconfig (package