From 3377e3b59203502c065d7c86cbb5e0f5e246862f Mon Sep 17 00:00:00 2001
From: Christopher Lemmer Webber <cwebber@dustycloud.org>
Date: Wed, 11 Mar 2020 22:04:53 -0400
Subject: [PATCH] gnu: Add vice.
* gnu/packages/emulators.scm (vice): New variable.
---
gnu/packages/emulators.scm | 58 ++++++++++++++++++++++++++++++++++++++
1 file changed, 58 insertions(+)
@@ -12,6 +12,7 @@
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2019 David Wilson <david@daviwil.com>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
+;;; Copyright © 2020 Christopher Lemmer Webber <cwebber@dustycloud.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -41,12 +42,14 @@
#:use-module (gnu packages audio)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
+ #:use-module (gnu packages bison)
#:use-module (gnu packages boost)
#:use-module (gnu packages backup)
#:use-module (gnu packages cdrom)
#:use-module (gnu packages compression)
#:use-module (gnu packages curl)
#:use-module (gnu packages elf)
+ #:use-module (gnu packages flex)
#:use-module (gnu packages fonts)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
@@ -1628,3 +1631,58 @@ derived from Gens. Project goals include clean source code, combined features
from various forks of Gens, and improved platform portability.")
(supported-systems '("i686-linux" "x86_64-linux"))
(license license:gpl2+)))
+
+(define-public vice
+ (package
+ (name "vice")
+ (version "3.4")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://sourceforge.net/projects"
+ "/vice-emu/files/releases/vice-"
+ version ".tar.gz/download"))
+ (sha256
+ (base32
+ "1svsw3z18nsj3vmpxdp456y79xsj9f1k405r07zd336kccf0rl2b"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (add-before 'configure 'fix-sh
+ (lambda _
+ (substitute* (find-files "." "configure")
+ (("-/bin/sh") (string-append "-" (which "sh")))
+ (("= /bin/sh") (string-append "= " (which "sh"))))))
+ (replace 'configure
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ ;; The 'configure' script is a wrapper for Waf and
+ ;; doesn't recognize things like '--enable-fast-install'.
+ (invoke "./configure"
+ (string-append "--prefix=" out))))))))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("bison" ,bison)
+ ("texinfo" ,texinfo)))
+ (inputs
+ `(("flex" ,flex)
+ ("xa" ,xa)
+ ("sdl2" ,sdl2)
+ ("libpng" ,libpng)
+ ("libjpeg" ,libjpeg-turbo)
+ ("ffmpeg" ,ffmpeg)
+ ("giflib" ,giflib)
+ ("zlib" ,zlib)
+ ("alsa-lib" ,alsa-lib)
+ ("pulseaudio" ,pulseaudio)
+ ("portaudio" ,portaudio)
+ ("mesa" ,mesa)
+ ("glu" ,glu)))
+ (home-page "http://vice-emu.sourceforge.net/")
+ (synopsis "Versatile Commodore emulator")
+ (description
+ "VICE emulates the C64, the C64DTV, the C128, the VIC20, practically
+all PET models, the PLUS4 and the CBM-II (aka C610/C510). An extra
+emulator is provided for C64 expanded with the CMD SuperCPU.")
+ (license license:gpl2+)))
--
2.25.1