From 3377e3b59203502c065d7c86cbb5e0f5e246862f Mon Sep 17 00:00:00 2001 From: Christopher Lemmer Webber 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(+) diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm index 7e4c98fbc7..40f81d1cc7 100644 --- a/gnu/packages/emulators.scm +++ b/gnu/packages/emulators.scm @@ -12,6 +12,7 @@ ;;; Copyright © 2019 Pierre Neidhardt ;;; Copyright © 2019 David Wilson ;;; Copyright © 2020 Jakub Kądziołka +;;; Copyright © 2020 Christopher Lemmer Webber ;;; ;;; 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