diff options
Diffstat (limited to 'gnu/packages/emulators.scm')
-rw-r--r-- | gnu/packages/emulators.scm | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm index b9c854ca25..b7f29a6f5b 100644 --- a/gnu/packages/emulators.scm +++ b/gnu/packages/emulators.scm @@ -1463,6 +1463,69 @@ functions. The source code to MAME serves as this documentation.") ;; keymaps, languages and samples are under CC0. (license (list license:gpl2+ license:expat license:cc0)))) +(define-public gnome-arcade + (package + (name "gnome-arcade") + (version "0.218.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/strippato/gnome-arcade") + (commit (string-append "v." version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1qc01a62p65qb6mwjfmxqsd6n3rglsfwrjhsp25nr7q54107n55l")))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f ; No tests. + #:configure-flags (list + (string-append "-DMAME_BIN=\"" + (assoc-ref %build-inputs "mame") + "/bin/mame\"") + (string-append "-DAPP_RES=\"" + (assoc-ref %outputs "out") + "/share/gnome-arcade/\"")) + #:phases + (modify-phases %standard-phases + (add-before 'build 'fix-paths + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (pk 'cwd (getcwd)) + (substitute* "../source/src/config.c" + (("/usr/share") (string-append out "/share")))) + #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (rom (string-append out "/share/gnome-arcade/data/rom")) + (tile (string-append out "/share/gnome-arcade/data/tile"))) + (mkdir-p bin) + (install-file "../gnome-arcade" bin) + (copy-recursively "../source/res" + (string-append out "/share/gnome-arcade/res")) + (mkdir-p rom) + (install-file "../source/data/rom/ROM.TXT" rom) + (mkdir-p tile) + (install-file "../source/data/tile/TILE.TXT" tile)) + #t))))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("mame" ,mame) + ("gtk" ,gtk+) + ("libevdev" ,libevdev) + ("libvlc" ,vlc) + ("libarchive" ,libarchive))) + (home-page "https://github.com/strippato/gnome-arcade") + (synopsis "Minimal MAME frontend") + (description + "A minimal GTK+ frontend for MAME, the multi-purpose arcade and console +emulator.") + (license license:gpl3+))) + (define-public pcsxr ;; No release since 2017. (let ((commit "6484236cb0281e8040ff6c8078c87899a3407534")) |