Thompson, David wrote 7 years ago
(address . guix-patches@gnu.org)
Here a couple of patches that add the Dolphin emulator. I used a Git
snapshot because the project goes *years* between releasing official
source tarballs while at the same time directing users to use binaries
built from the latest commit in their Git repo, so I think packaging
the Git source aligns best with what a Dolphin user would expect.
- Dave
From b09950c2847be7f17ea57906714f74a5ca2f671b Mon Sep 17 00:00:00 2001
From: David Thompson <davet@gnu.org>
Date: Wed, 7 Feb 2018 06:28:46 -0500
Subject: [PATCH 1/2] gnu: Add wxwidgets-gtk2-3.1.
* gnu/packages/wxwidgets.scm (wxwidgets-gtk2-3.1): New variable.
---
gnu/packages/wxwidgets.scm | 8 ++++++++
1 file changed, 8 insertions(+)
Toggle diff (21 lines)
diff --git a/gnu/packages/wxwidgets.scm b/gnu/packages/wxwidgets.scm
index 84446d8ef..9f7a87ca4 100644
--- a/gnu/packages/wxwidgets.scm
+++ b/gnu/packages/wxwidgets.scm
@@ -126,6 +126,14 @@ and many other languages.")
((#:configure-flags flags)
`(cons "--enable-mediactrl" ,flags))))))
+(define-public wxwidgets-gtk2-3.1
+ (package (inherit wxwidgets-3.1)
+ (inputs `(("gtk+" ,gtk+-2)
+ ,@(alist-delete
+ "gtk+"
+ (package-inputs wxwidgets-3.1))))
+ (name "wxwidgets-gtk2")))
+
(define-public python2-wxpython
(package
(name "python2-wxpython")
--
2.16.1
From f3793694d8313a242195315214dd829685f6d52d Mon Sep 17 00:00:00 2001
From: David Thompson <davet@gnu.org>
Date: Wed, 7 Feb 2018 06:29:28 -0500
Subject: [PATCH 2/2] gnu: Add dolphin-emulator.
* gnu/packages/games.scm (dolphin-emulator): New variable.
---
gnu/packages/games.scm | 77 +++++++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 76 insertions(+), 1 deletion(-)
Toggle diff (101 lines)
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index e2f855aa5..3f50945d6 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 John Darrington <jmd@gnu.org>
;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
-;;; Copyright © 2014, 2015, 2016 David Thompson <dthompson2@worcester.edu>
+;;; Copyright © 2014, 2015, 2016, 2018 David Thompson <dthompson2@worcester.edu>
;;; Copyright © 2014, 2015, 2016, 2017 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2014 Cyrill Schenkel <cyrill.schenkel@gmail.com>
;;; Copyright © 2014 Sylvain Beucler <beuc@beuc.net>
@@ -88,6 +88,7 @@
#:use-module (gnu packages libcanberra)
#:use-module (gnu packages libedit)
#:use-module (gnu packages libunwind)
+ #:use-module (gnu packages libusb)
#:use-module (gnu packages haskell)
#:use-module (gnu packages mp3)
#:use-module (gnu packages music)
@@ -5526,3 +5527,77 @@ hacking the gamification of contribution graphs on platforms such as
Github or Gitlab.")
(home-page "https://github.com/umayr/badass")
(license license:expat))))
+
+;; Building from recent Git because the official 5.0 release no longer builds.
+(define-public dolphin-emulator
+ (let ((commit "d04b179111f8d863f360839474cb82c766f762b8")
+ (revision "0"))
+ (package
+ (name "dolphin-emulator")
+ (version (git-version "5.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/dolphin-emu/dolphin.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0g725wmhlim73zrhi47wmr1bmplpy4b7sbimd5pm8xpfhj5nm10l"))))
+ (build-system cmake-build-system)
+ (arguments
+ '(#:tests? #f
+ ;; The FindGTK2 cmake script only checks hardcoded directories for
+ ;; glib/gtk headers.
+ #:configure-flags
+ (list (string-append "-DGTK2_GDKCONFIG_INCLUDE_DIR="
+ (assoc-ref %build-inputs "gtk+")
+ "/lib/gtk-2.0/include")
+ (string-append "-DGTK2_GLIBCONFIG_INCLUDE_DIR="
+ (assoc-ref %build-inputs "glib")
+ "/lib/glib-2.0/include")
+ (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"
+ "-DENABLE_QT2=False"))) ; disable qt frontend
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("gettext" ,gnu-gettext)))
+ (inputs
+ `(("alsa-lib" ,alsa-lib)
+ ("ao" ,ao)
+ ("bluez" ,bluez)
+ ("eudev" ,eudev)
+ ("ffmpeg" ,ffmpeg)
+ ("glew" ,glew)
+ ("glib" ,glib)
+ ("glu" ,glu)
+ ("gtk+" ,gtk+-2)
+ ("libevdev" ,libevdev)
+ ("libpng" ,libpng)
+ ("libusb" ,libusb)
+ ("libx11" ,libx11)
+ ("libxi" ,libxi)
+ ("libxrandr" ,libxrandr)
+ ("lzo" ,lzo)
+ ("mesa" ,mesa)
+ ("miniupnpc" ,miniupnpc)
+ ("openal" ,openal)
+ ("pulseaudio" ,pulseaudio)
+ ("sdl2" ,sdl2)
+ ("soil" ,soil)
+ ("soundtouch" ,soundtouch)
+ ("wxwidgets" ,wxwidgets-gtk2-3.1)
+ ("zlib" ,zlib)))
+ (home-page "https://dolphin-emu.org/")
+ (synopsis "Nintendo Wii and GameCube emulator")
+ (description
+ "Dolphin is an emulator for two Nintendo video game consoles: the
+GameCube and the Wii. It provides compatibility with all PC controllers,
+turbo speed, networked multiplayer, and graphical enhancements.")
+ (license license:gpl2))))
--
2.16.1