From patchwork Fri Feb 21 07:32:07 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrew Wong X-Patchwork-Id: 38891 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 8675027BBEA; Fri, 21 Feb 2025 07:34:25 +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.4 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,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 BB1F727BBE2 for ; Fri, 21 Feb 2025 07:34:23 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tlNXz-0003zN-Cy; Fri, 21 Feb 2025 02:34: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 1tlNXx-0003yy-O5 for guix-patches@gnu.org; Fri, 21 Feb 2025 02:34:05 -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 1tlNXx-0001Sv-Ew for guix-patches@gnu.org; Fri, 21 Feb 2025 02:34: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:Date:From:To:Subject; bh=10saz79USkKaaclaa5TZ+k8zGrr3dddKptTRut+mw8w=; b=U/deVQVPlfnKrh8szgHE1bflkprKDP6D/lBfOX1PIPKNQUD4PW5sn2bPBK5qEake8BC7aYXtObXQyqcIuVPStvY+R9Q0I/+C2rxeiQnHIAmJr4L3PqIsLQZRnY4EXYchMY4hPRXEV2pYQL5UZ1/lu2R2JbZtnBNi2nRk/VTvwSnWJJymkondBXzWmfFU4AX7MHm6AyK0iKvp7jt9XjP1aB9xFa3oBGGhU211hWS2oRdVndsKnrqFxBlvrD4lMaEFmvpKRWo8qsiqTh4NgCM+KnmA7jue2W6vfSCEja1hlELkrRWiVVKZja1QAB7IFJ4pRibV/l6uNlQ8KAa4e0Euqg==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1tlNXv-0001u0-14; Fri, 21 Feb 2025 02:34:03 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#76458] [PATCH v2] gnu: Add flycast. Resent-From: Andrew Wong Original-Sender: "Debbugs-submit" Resent-CC: adam.faiz@disroot.org, liliana.prikler@gmail.com, iyzsong@envs.net, guix-patches@gnu.org Resent-Date: Fri, 21 Feb 2025 07:34:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 76458 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 76458@debbugs.gnu.org Cc: Andrew Wong , Adam Faiz , Liliana Marie Prikler , =?utf-8?b?5a6L5paH5q2m?= X-Debbugs-Original-To: guix-patches@gnu.org X-Debbugs-Original-Xcc: Adam Faiz , Liliana Marie Prikler , =?utf-8?b?5a6L5paH5q2m?= Received: via spool by submit@debbugs.gnu.org id=B.17401232287173 (code B ref -1); Fri, 21 Feb 2025 07:34:02 +0000 Received: (at submit) by debbugs.gnu.org; 21 Feb 2025 07:33:48 +0000 Received: from localhost ([127.0.0.1]:51546 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tlNXf-0001rd-JV for submit@debbugs.gnu.org; Fri, 21 Feb 2025 02:33:48 -0500 Received: from lists.gnu.org ([2001:470:142::17]:50174) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tlNXc-0001q7-E9 for submit@debbugs.gnu.org; Fri, 21 Feb 2025 02:33:45 -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 1tlNXU-0003xh-WD for guix-patches@gnu.org; Fri, 21 Feb 2025 02:33:37 -0500 Received: from qs51p00im-qukt01071901.me.com ([17.57.155.8]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tlNXT-0001Jw-65 for guix-patches@gnu.org; Fri, 21 Feb 2025 02:33:36 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=icloud.com; s=1a1hai; bh=10saz79USkKaaclaa5TZ+k8zGrr3dddKptTRut+mw8w=; h=From:To:Subject:Date:Message-ID:MIME-Version:x-icloud-hme; b=BQOtySnfFmNyK3q+hp+764gqcLy9AUVoD6QZjbvL0UbaYHfydiBnvqQClcHTSuVj+ 1yGiL6kNhL0iepYIgJEy1L8YFtog3y0C9bzJgPwDi77opaF3MOCOs1fXcU59RzEwyu 6LUq4kfWvXwmIZGRmBQiqIVcFPJcjpVAbzPxeUpz31JWxT3mS6PBkxdnIIVjDvcOb9 5nt9d1NYc4BJH1WnLu/JLsE1mq9SzYD0Ldmlchg3RlztitQTqQcTyIAiWUSCibNNAB FYN1AHIlBv5lrQOfg3TKviFaa0tv3KveOHXRLLtZOustahVDsZvCgfjhpVnQJKrbpu tPxdi6Zibt8uQ== Received: from wongworks.lan (qs51p00im-dlb-asmtp-mailmevip.me.com [17.57.155.28]) by qs51p00im-qukt01071901.me.com (Postfix) with ESMTPSA id F2D8262801C3; Fri, 21 Feb 2025 07:33:29 +0000 (UTC) Date: Fri, 21 Feb 2025 02:32:07 -0500 Message-ID: X-Mailer: git-send-email 2.48.1 MIME-Version: 1.0 X-Proofpoint-ORIG-GUID: PTl27cKC8k2jrEY-ju_rDHncF6ssONOT X-Proofpoint-GUID: PTl27cKC8k2jrEY-ju_rDHncF6ssONOT X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1057,Hydra:6.0.680,FMLib:17.12.68.34 definitions=2025-02-21_01,2025-02-20_02,2024-11-22_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 suspectscore=0 phishscore=0 malwarescore=0 spamscore=0 adultscore=0 bulkscore=0 mlxscore=0 clxscore=1015 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.19.0-2308100000 definitions=main-2502210056 X-Apple-Remote-Links: v=1;h=KCk=;charset=UTF-8 Received-SPF: pass client-ip=17.57.155.8; envelope-from=wongandj@icloud.com; helo=qs51p00im-qukt01071901.me.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action 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: , Reply-to: Andrew Wong X-ACL-Warn: , Andrew Wong via Guix-patches X-Patchwork-Original-From: Andrew Wong via Guix-patches via From: Andrew Wong 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 (flycast): New variable. Change-Id: I358235492a3493c3126f7ca9f738ed2706e36105 --- I sent an earlier version of this patch, but it got mixed up in another thread(#75856). This version addresses the previous issues. gnu/packages/emulators.scm | 71 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) base-commit: cd20619cfcb32c2631fb602729512740bc510550 diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm index 0eafc3df9e..579f1e1f0f 100644 --- a/gnu/packages/emulators.scm +++ b/gnu/packages/emulators.scm @@ -4072,6 +4072,77 @@ (define-public exomizer ;; zlib license with an (non-)advertising clause. (license license:zlib))) +(define-public flycast + (package + (name "flycast") + (version "2.4") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/flyinghead/flycast") + (commit (string-append "v" version)) + ;; There are many bundled packages here included as git + ;; submodules. Removing many of them would require patching the + ;; source code and repository layout. + (recursive? #t))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0ainy75gkrvilcm89hq6wq9md41w0mxgp6l27q5fzrxxykpjh6ym")) + (modules '((guix build utils))) + (snippet #~(begin + (substitute* "CMakeLists.txt" + (("add_subdirectory\\(core/deps/Vulkan-Headers\\)") + "find_package(VulkanHeaders)")) + (with-directory-excursion "core/deps" + (for-each delete-file-recursively + '("SDL" + "Spout" + "Syphon" + "Vulkan-Headers" + "breakpad" + "discord-rpc" + "libzip" + "oboe"))))))) + (build-system cmake-build-system) + (inputs (list alsa-lib + ao + curl + glslang + libzip + lua + miniupnpc + pulseaudio + sdl2 + spirv-tools + vulkan-headers + pkg-config)) + (arguments + (list + #:tests? #f + ;; There are no test targets. Instead, there are configuration options + ;; which turn the main target (bin/flymake) into a set of unit tests. + #:configure-flags + #~(list "-DUSE_ALSA=ON" + "-DUSE_BREAKPAD=OFF" + "-DUSE_DX11=OFF" + "-DUSE_DX9=OFF" + "-DUSE_HOST_GLSLANG=OFF" + ;; ^^ This option is not implemented correctly, but may be in + ;; the future. Review all of these options on the next update! + ;; (see: https://github.com/flyinghead/flycast/issues/1843) + "-DUSE_HOST_LIBZIP=ON" + "-DUSE_HOST_SDL=ON" + "-DUSE_LIBAO=ON" + "-DUSE_LUA=ON" + "-DUSE_PULSEAUDIO=ON" + "-DUSE_VULKAN=ON"))) + (home-page "https://github.com/flyinghead/flycast") + (synopsis "Sega Dreamcast, Naomi, Naomi 2, and Atomiswave emulator") + (description "Flycast is a multi-platform Sega Dreamcast, Naomi, Naomi 2, +and Atomiswave emulator derived from reicast.") + (license license:gpl2+))) + (define-public freedisksysrom ;; There is no release; use the latest commit. (let ((commit "0d5f95f109bb3aadf2bb9510bfda13879bbd5266")