gnu: retroarch: Propagate core assets.

The RetroArch menus will not correctly render without its assets, the
plugins won't be usable without the core info files, and controllers won't be
usable without joypad-autoconfig files.  Hence...

* gnu/packages/emulators.scm (retroarch-minimal): New variable, renamed from
previous retroarch.
(retroarch) [propagated-inputs]: New field.

Change-Id: I9dccf89da1f35acfa705de9ae02ae5f72a0b1825
This commit is contained in:
Maxim Cournoyer 2024-10-02 17:17:49 +09:00
parent 7fe3a5d216
commit bd37990984
No known key found for this signature in database
GPG key ID: 1260E46482E63562

View file

@ -118,7 +118,8 @@ (define-module (gnu packages emulators)
#:use-module (guix build-system meson)
#:use-module (guix build-system python)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system qt))
#:use-module (guix build-system qt)
#:use-module (guix build-system trivial))
(define-public vice
(package
@ -1577,9 +1578,9 @@ (define-public retroarch-joypad-autoconfig
physical device and the RetroPad virtual controller.")
(license license:expat)))
(define-public retroarch
(define-public retroarch-minimal
(package
(name "retroarch")
(name "retroarch-minimal")
(version "1.19.1")
(source
(origin
@ -1740,6 +1741,23 @@ (define (directory? x)
license:expat ;yxml
license:bsd-3)))) ;feragamemode
(define-public retroarch
(package
(inherit retroarch-minimal)
(name "retroarch")
(source #f)
(build-system trivial-build-system)
(arguments (list #:builder #~(mkdir #$output)))
(propagated-inputs
(list retroarch-minimal
;; We cannot simply hard-code the resource paths, as they'd written
;; to ~/.config/retroarch.cfg and never updated (going stale),
;; which is problematic. The environment variables overrides the
;; configuration file values.
retroarch-assets
retroarch-core-info
retroarch-joypad-autoconfig))))
(define-public wasm4
(package
(name "wasm4")