GNU bug report logs - #75619
[PATCH 0/7] Add libretro-dolphin-emu and update retroarch

Previous Next

Package: guix-patches;

Reported by: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>

Date: Fri, 17 Jan 2025 03:08:02 UTC

Severity: normal

Tags: patch

Done: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


Message #44 received at 75619 <at> debbugs.gnu.org (full text, mbox):

From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: 75619 <at> debbugs.gnu.org
Cc: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
Subject: [PATCH v2 05/10] gnu: Add libretro-dolphin-emu.
Date: Sat, 18 Jan 2025 17:50:49 +0900
* 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 28b8914902..242c1fa03b 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")
-- 
2.47.1





This bug report was last modified 176 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.