Subject: [bug#68469] [PATCH] gnu: Add melonds.

From: altadil <[email-masked]>
Date: Mon, 15 Jan 2024 12:47:53 +0000

* gnu/packages/emulators.scm (melonds): New variable.

Change-Id: I8f7d31686fe5c9860acd86eb5740933218ca2910
---
guix build --no-grafts --check --rounds=2 --system=x86_64-linux was
run successfully on a Zen4 CPU.
 gnu/packages/emulators.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
index cde3ee052c..a0235e572b 100644
--- a/gnu/packages/emulators.scm
+++ b/gnu/packages/emulators.scm
@@ -21,6 +21,7 @@
 ;;; Copyright © 2023 Yovan Naumovski <[email-masked]>
 ;;; Copyright © 2023 Hendursaga <[email-masked]>
 ;;; Copyright © 2023 Zheng Junjie <[email-masked]>
+;;; Copyright © 2024 Altadil <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -81,6 +82,7 @@ (define-module (gnu packages emulators)
   #:use-module (gnu packages graphics)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages image)
+  #:use-module (gnu packages kde-frameworks)
   #:use-module (gnu packages libedit)
   #:use-module (gnu packages libusb)
   #:use-module (gnu packages linux)
@@ -733,6 +735,39 @@ (define-public mednafen
     ;; Main license is GPL2+.  Some parts are BSD-3.
     (license (list license:gpl2+ license:bsd-3))))
 
+(define-public melonds
+  (package
+    (name "melonds")
+    (version "0.9.5")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                     (url "https://github.com/melonDS-emu/melonDS")
+                     (commit version)))
+              (file-name (git-file-name name version))
+              (sha256 (base32 "0c4hhs5mffj43pa2y18k70q6szc09m8yj0gqw2svszpvpz2n91cz"))))
+    (build-system cmake-build-system)
+    (arguments (list #:tests? #f)) ; No test target available.
+    (native-inputs (list extra-cmake-modules pkg-config))
+    (inputs (list curl
+                  gnutls
+                  libarchive
+                  libpcap
+                  libslirp
+                  qtbase-5
+                  qtmultimedia-5
+                  sdl2
+                  wayland
+                  zstd))
+      (synopsis "DS emulator")
+      (description "melonDS is an emulator of the Nintendo DS.  It aims at
+providing fast and accurate emulation.  While it is still a work in progress,
+it has a pretty solid set of features, includind a nearly complete core, a JIT
+recompiler for fast emulation, an OpenGL renderer, joystick support and
+savestates.")
+      (home-page "https://melonds.kuribo64.net/")
+      (license license:gpl3+)))
+
 (define-public mgba
   (package
     (name "mgba")

base-commit: 162d6a2fdd6af13272967c77347a54934ecb45e6
-- 
2.41.0