* [bug#73488] [PATCH 0/7] Add Jolly Good and some of its emulators
@ 2024-09-26 2:35 Maxim Cournoyer
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 " Maxim Cournoyer
0 siblings, 1 reply; 18+ messages in thread
From: Maxim Cournoyer @ 2024-09-26 2:35 UTC (permalink / raw)
To: 73488; +Cc: Maxim Cournoyer
This series adds the Jolly Good emulator API and reference user
interface (jgrf), and some core files (emulator plugins made to be used by
it). Currently I've packaged and tested their bsnes, nestopia and cega ports.
Maxim Cournoyer (7):
gnu: bsnes: Remove input labels and use gexps.
gnu: Add jg-api.
gnu: Add jgrf.
gnu: jgrf: Add search path mechanism.
gnu: Add jg-bsnes.
gnu: Add jg-nestopia.
gnu: Add jg-cega.
gnu/local.mk | 1 +
gnu/packages/emulators.scm | 277 ++++++++++++++--
.../patches/jgrf-implement-search-paths.patch | 302 ++++++++++++++++++
3 files changed, 558 insertions(+), 22 deletions(-)
create mode 100644 gnu/packages/patches/jgrf-implement-search-paths.patch
base-commit: 8576aaf5f90db9b385ea8cf6dc98bf3c062959dc
--
2.46.0
^ permalink raw reply [flat|nested] 18+ messages in thread
* [bug#73488] [PATCH games v3 0/7] Add Jolly Good and some of its emulators
2024-09-26 2:35 [bug#73488] [PATCH 0/7] Add Jolly Good and some of its emulators Maxim Cournoyer
@ 2024-10-03 7:25 ` Maxim Cournoyer
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 1/7] teams: Register (gnu packages emulators) to games team Maxim Cournoyer
` (7 more replies)
0 siblings, 8 replies; 18+ messages in thread
From: Maxim Cournoyer @ 2024-10-03 7:25 UTC (permalink / raw)
To: 73488
Cc: Maxim Cournoyer, Adam Faiz, Liliana Marie Prikler,
宋文武
This series adds the Jolly Good emulator API and reference user
interface (jgrf), and some core files (emulator plugins made to be used by
it). Currently I've packaged and tested their bsnes, nestopia and cega ports.
Changes in v3:
- Remove extraneous 'modules' field from origin
- Use latest commit, with support for search paths
- Remove extraneous 'modules' field from origin
Changes in v2:
- Sort inputs
Maxim Cournoyer (7):
teams: Register (gnu packages emulators) to games team.
gnu: bsnes: Remove input labels and use gexps.
gnu: Add jg-api.
gnu: Add jgrf.
gnu: Add jg-bsnes.
gnu: Add jg-nestopia.
gnu: Add jg-cega.
etc/teams.scm | 3 +-
gnu/packages/emulators.scm | 281 ++++++++++++++++++++++++++++++++++---
2 files changed, 261 insertions(+), 23 deletions(-)
base-commit: a4ea332bc219e14560d3a5daaa658425d898ec37
--
2.46.0
^ permalink raw reply [flat|nested] 18+ messages in thread
* [bug#73488] [PATCH games v3 1/7] teams: Register (gnu packages emulators) to games team.
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 " Maxim Cournoyer
@ 2024-10-03 7:25 ` Maxim Cournoyer
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 2/7] gnu: bsnes: Remove input labels and use gexps Maxim Cournoyer via Guix-patches
` (6 subsequent siblings)
7 siblings, 0 replies; 18+ messages in thread
From: Maxim Cournoyer @ 2024-10-03 7:25 UTC (permalink / raw)
To: 73488; +Cc: Maxim Cournoyer
* etc/teams.scm (games) <scope>: Register "gnu/packages/emulators.scm".
Change-Id: I269f83073ff7bb9dcfc23767d853050ce07bfcb5
---
(no changes since v1)
etc/teams.scm | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/etc/teams.scm b/etc/teams.scm
index 9239021b39..ce87f34c07 100755
--- a/etc/teams.scm
+++ b/etc/teams.scm
@@ -465,7 +465,8 @@ (define-team games
(team 'games
#:name "Games and Toys"
#:description "Packaging programs for amusement."
- #:scope (list "gnu/packages/games.scm"
+ #:scope (list "gnu/packages/emulators.scm"
+ "gnu/packages/games.scm"
"gnu/packages/game-development.scm"
"gnu/packages/minetest.scm"
"gnu/packages/esolangs.scm" ; granted, rather niche
--
2.46.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [bug#73488] [PATCH games v3 2/7] gnu: bsnes: Remove input labels and use gexps.
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 " Maxim Cournoyer
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 1/7] teams: Register (gnu packages emulators) to games team Maxim Cournoyer
@ 2024-10-03 7:25 ` Maxim Cournoyer via Guix-patches
2024-10-03 7:50 ` Liliana Marie Prikler via Guix-patches
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 3/7] gnu: Add jg-api Maxim Cournoyer via
` (5 subsequent siblings)
7 siblings, 1 reply; 18+ messages in thread
From: Maxim Cournoyer via Guix-patches @ 2024-10-03 7:25 UTC (permalink / raw)
To: 73488
Cc: Maxim Cournoyer, Adam Faiz, Liliana Marie Prikler,
宋文武
* gnu/packages/emulators.scm (bsnes) [arguments]: Use gexps.
[inputs]: Remove labels.
[home-page]: Update URL.
Change-Id: I69046d977c4647f46c1359d62b762149b8f70160
---
(no changes since v1)
gnu/packages/emulators.scm | 43 +++++++++++++++++++-------------------
1 file changed, 21 insertions(+), 22 deletions(-)
diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
index 4dc61bdbff..50a7b67121 100644
--- a/gnu/packages/emulators.scm
+++ b/gnu/packages/emulators.scm
@@ -2230,31 +2230,30 @@ (define-public bsnes
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32
- "0j054x38fwai61vj36sc04r3zkzay5acq2cgd9zqv5hs51s36g5b"))))
+ (base32 "0j054x38fwai61vj36sc04r3zkzay5acq2cgd9zqv5hs51s36g5b"))))
(build-system gnu-build-system)
(arguments
- `(#:make-flags (list "-C" "bsnes"
- ;; Remove march=native
- "local=false"
- (string-append "prefix=" (assoc-ref %outputs "out")))
- #:tests? #f ; No tests.
- #:phases (modify-phases %standard-phases
- (delete 'configure))))
- (native-inputs
- (list pkg-config))
+ (list
+ #:make-flags #~(list "-C" "bsnes"
+ ;; Remove march=native
+ "local=false"
+ (string-append "prefix=" #$output))
+ #:tests? #f ;No tests.
+ #:phases #~(modify-phases %standard-phases
+ (delete 'configure))))
+ (native-inputs (list pkg-config))
(inputs
- `(("alsa-lib" ,alsa-lib)
- ("ao" ,ao)
- ("cairo" ,cairo)
- ("eudev" ,eudev)
- ("gtksourceview-2" ,gtksourceview-2)
- ("libxrandr" ,libxrandr)
- ("libxv" ,libxv)
- ("openal" ,openal)
- ("pulseaudio" ,pulseaudio)
- ("sdl2" ,sdl2)))
- (home-page "https://bsnes.dev/")
+ (list alsa-lib
+ ao
+ cairo
+ eudev
+ gtksourceview-2
+ libxrandr
+ libxv
+ openal
+ pulseaudio
+ sdl2))
+ (home-page "https://github.com/bsnes-emu/bsnes")
(synopsis "Emulator for the Super Nintendo / Super Famicom systems")
(description
"bsnes is a Super Nintendo / Super Famicom emulator that focuses on
--
2.46.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [bug#73488] [PATCH games v3 3/7] gnu: Add jg-api.
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 " Maxim Cournoyer
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 1/7] teams: Register (gnu packages emulators) to games team Maxim Cournoyer
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 2/7] gnu: bsnes: Remove input labels and use gexps Maxim Cournoyer via Guix-patches
@ 2024-10-03 7:25 ` Maxim Cournoyer via
2024-10-03 7:51 ` Liliana Marie Prikler via Guix-patches
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 4/7] gnu: Add jgrf Maxim Cournoyer via Guix-patches
` (4 subsequent siblings)
7 siblings, 1 reply; 18+ messages in thread
From: Maxim Cournoyer via @ 2024-10-03 7:25 UTC (permalink / raw)
To: 73488
Cc: Maxim Cournoyer, Adam Faiz, Liliana Marie Prikler,
宋文武
* gnu/packages/emulators.scm (jg-api): New variable.
Change-Id: I2cd2086560f8353f8260209c4ee0f117c3615917
---
(no changes since v1)
gnu/packages/emulators.scm | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
index 50a7b67121..09e722b4f4 100644
--- a/gnu/packages/emulators.scm
+++ b/gnu/packages/emulators.scm
@@ -2260,6 +2260,32 @@ (define-public bsnes
performance, features, and ease of use.")
(license license:gpl3)))
+(define-public jg-api
+ (package
+ (name "jg-api")
+ (version "1.0.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.com/jgemu/jg")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0117cvfvzhrm9fxnryhbnf9r0f8ij4ahhfqiqp5yv11bz2wcyhqh"))))
+ (build-system gnu-build-system)
+ (arguments
+ (list #:tests? #f
+ #:make-flags #~(list (string-append "PREFIX=" #$output))
+ #:phases #~(modify-phases %standard-phases
+ (delete 'configure)))) ;no configure phase
+ (home-page "https://gitlab.com/jgemu/jg")
+ (synopsis "Emulators Plugin API")
+ (description "This package provides the Jolly Good API C and C++ headers.
+The Jolly Good API is a shared object or plugin @acronym{API, Application
+Programming Interface} for emulators.")
+ (license license:zlib)))
+
(define-public zsnes
(package
(name "zsnes")
--
2.46.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [bug#73488] [PATCH games v3 4/7] gnu: Add jgrf.
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 " Maxim Cournoyer
` (2 preceding siblings ...)
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 3/7] gnu: Add jg-api Maxim Cournoyer via
@ 2024-10-03 7:25 ` Maxim Cournoyer via Guix-patches
2024-10-03 7:57 ` Liliana Marie Prikler via Guix-patches
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 5/7] gnu: Add jg-bsnes Maxim Cournoyer
` (3 subsequent siblings)
7 siblings, 1 reply; 18+ messages in thread
From: Maxim Cournoyer via Guix-patches @ 2024-10-03 7:25 UTC (permalink / raw)
To: 73488
Cc: Maxim Cournoyer, Adam Faiz, Liliana Marie Prikler,
宋文武
* gnu/packages/emulators.scm (jgrf): New variable.
Change-Id: I0cf706e66977ceb96902dcd54f9175031e129445
---
Changes in v3:
- Remove extraneous 'modules' field from origin
- Use latest commit, with support for search paths
Changes in v2:
- Sort inputs
gnu/packages/emulators.scm | 70 ++++++++++++++++++++++++++++++++++++++
1 file changed, 70 insertions(+)
diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
index 09e722b4f4..ae2a78a0f6 100644
--- a/gnu/packages/emulators.scm
+++ b/gnu/packages/emulators.scm
@@ -2286,6 +2286,76 @@ (define-public jg-api
Programming Interface} for emulators.")
(license license:zlib)))
+(define-public jgrf
+ ;; Unreleased work contains support for the JOLLYGOOD_* environment
+ ;; variables used to locate cores and assets.
+ (let ((commit "7d5c2b8593020e92d5b9b051dfb94be7f17c04ce")
+ (revision "0"))
+ (package
+ (name "jgrf")
+ (version (git-version "1.1.0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.com/jgemu/jgrf")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (snippet '(begin
+ ;; TODO: Package md5.h and md5.c from
+ ;; http://openwall.info/wiki/people/solar/software
+ ;; /public-domain-source-code/md5,
+ ;; remove these bundled files and set the
+ ;; USE_EXTERNAL_MD5 Make flag to 1.
+ ;; (delete-file "deps/md5.h")
+ ;; (delete-file "deps/md5.c")
+ (use-modules (guix build utils))
+ (delete-file-recursively "deps/miniz")))
+ (sha256
+ (base32
+ "0gkmyyaxpj3szw6r1zm5850h5f362p0jdr5w70g2j0939rqn5db4"))))
+ (build-system gnu-build-system)
+ (arguments
+ (list #:tests? #f ;no test suite
+ #:make-flags
+ #~(list (string-append "AR=" #$(ar-for-target))
+ (string-append "CC=" #$(cc-for-target))
+ (string-append "CXX=" #$(cxx-for-target))
+ (string-append "PREFIX=" #$output))
+ #:phases #~(modify-phases %standard-phases
+ (delete 'configure))))
+ (native-inputs (list jg-api pkg-config))
+ (inputs
+ (list flac
+ libepoxy
+ libsamplerate
+ lzo
+ miniz
+ sdl2
+ soxr
+ speexdsp
+ zlib
+ `(,zstd "lib")))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "JOLLYGOOD_CORE_DIRS")
+ (files '("lib/jollygood")))
+ (search-path-specification
+ (variable "JOLLYGOOD_ASSET_DIRS")
+ (files '("share/jollygood")))))
+ (home-page "https://gitlab.com/jgemu/jgrf")
+ (synopsis "Jolly Good Reference Frontend")
+ (description "The Jolly Good Reference Frontend (accessible via the
+@command{jollygood} command) is the simplest possible frontend to The Jolly
+Good API. It may be used to run emulators built as shared objects, or as a
+\"white-label\" frontend for statically linked standalone emulators.")
+ ;; The main license is BSD-3; the bundled source licenses are also listed
+ ;; below.
+ (license (list license:bsd-3 ;this software, gltext.h, lodepng.c, lodepng.h
+ license:expat ;ezmenu.h source, musl_memmem.c,
+ ;parson.h, parson.c, tconfig.h, tconfig.c
+ license:public-domain ;md5.h, md5.c, parg.h, parg.c
+ license:cc0)))))
+
(define-public zsnes
(package
(name "zsnes")
--
2.46.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [bug#73488] [PATCH games v3 5/7] gnu: Add jg-bsnes.
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 " Maxim Cournoyer
` (3 preceding siblings ...)
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 4/7] gnu: Add jgrf Maxim Cournoyer via Guix-patches
@ 2024-10-03 7:25 ` Maxim Cournoyer
2024-10-03 8:00 ` Liliana Marie Prikler via Guix-patches via
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 6/7] gnu: Add jg-nestopia Maxim Cournoyer
` (2 subsequent siblings)
7 siblings, 1 reply; 18+ messages in thread
From: Maxim Cournoyer @ 2024-10-03 7:25 UTC (permalink / raw)
To: 73488
Cc: Maxim Cournoyer, Adam Faiz, Liliana Marie Prikler,
宋文武
* gnu/packages/emulators.scm (jg-bsnes): New variable.
Change-Id: If88a7bea0c87c8af8fce051f8bec891ff249449f
---
Changes in v3:
- Remove extraneous 'modules' field from origin
gnu/packages/emulators.scm | 73 ++++++++++++++++++++++++++++++++++++++
1 file changed, 73 insertions(+)
diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
index ae2a78a0f6..4c1a705994 100644
--- a/gnu/packages/emulators.scm
+++ b/gnu/packages/emulators.scm
@@ -2356,6 +2356,79 @@ (define-public jgrf
license:public-domain ;md5.h, md5.c, parg.h, parg.c
license:cc0)))))
+(define-public jg-bsnes
+ (package
+ (name "jg-bsnes")
+ (version "2.0.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.com/jgemu/bsnes")
+ (commit version)))
+ (file-name (git-file-name name version))
+ ;; XXX: Some source dependencies are bundled and are not easy to
+ ;; unbundle due to the build system building an object combining
+ ;; their sources directly:
+ ;; - byuuML
+ ;; - gb
+ ;; - libcoco
+ ;; - snes_spc
+ (snippet '(begin
+ (use-modules (guix build utils))
+ (delete-file-recursively "deps/libsamplerate")))
+ (sha256
+ (base32
+ "0z1ka4si8vcb0j6ih087cni18vpgfd3qnaw24awycxz23xc0jkdv"))))
+ (build-system gnu-build-system)
+ (arguments
+ (list #:tests? #f ;no test suite
+ #:make-flags
+ #~(list (string-append "AR=" #$(ar-for-target))
+ (string-append "CC=" #$(cc-for-target))
+ (string-append "CXX=" #$(cxx-for-target))
+ (string-append "PREFIX=" #$output))
+ #:phases #~(modify-phases %standard-phases
+ (delete 'configure)))) ;no configure script
+ (native-inputs (list jg-api pkg-config))
+ (inputs (list libsamplerate))
+ (home-page "https://gitlab.com/jgemu/bsnes")
+ (synopsis "Jolly Good Fork of bsnes")
+ (description "@code{bsnes-jg} is a cycle accurate emulator for the Super
+Famicom/Super Nintendo Entertainment System, including support for the Super
+Game Boy, BS-X Satellaview, and Sufami Turbo. @code{bsnes-jg} is a fork of
+@code{bsnes} v115, Many changes have been made post-fork:
+@itemize
+@item Higher quality resampler with settings
+@item Improved performance without loss of accuracy
+@item Portability improvements
+@item Removal of accuracy-reducing hacks and unnecessary code
+@item Significant increase in standards compliance
+@item Translation to the C++ Standard Library (ISO C++11)
+@end itemize
+
+In particular, it uses much less @acronym{CPU, Central Processing Unit}
+compared to the original @code{bsnes} (though not as little as @code{zsnes}).
+
+The supported file formats are:
+@itemize @file
+@item .sfc
+@item .smc
+@item .bs
+@item .st
+@item .fig
+@item .swc
+@end itemize
+
+This is intended to be used with the Jolly Good Reference Frontend
+@command{jollygood} command from the @code{jgrf} package.")
+ ;; The project license is GPL3+. The bundled source licenses are also
+ ;; listed below.
+ (license (list license:gpl3+
+ license:bsd-3 ;byuuML
+ license:expat ;gb
+ license:isc ;libco
+ license:lgpl2.1+))))
+
(define-public zsnes
(package
(name "zsnes")
--
2.46.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [bug#73488] [PATCH games v3 6/7] gnu: Add jg-nestopia.
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 " Maxim Cournoyer
` (4 preceding siblings ...)
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 5/7] gnu: Add jg-bsnes Maxim Cournoyer
@ 2024-10-03 7:25 ` Maxim Cournoyer
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 7/7] gnu: Add jg-cega Maxim Cournoyer
2024-10-05 13:58 ` bug#73488: [PATCH games v3 0/7] Add Jolly Good and some of its emulators Maxim Cournoyer
7 siblings, 0 replies; 18+ messages in thread
From: Maxim Cournoyer @ 2024-10-03 7:25 UTC (permalink / raw)
To: 73488
Cc: Maxim Cournoyer, Adam Faiz, Liliana Marie Prikler,
宋文武
* gnu/packages/emulators.scm (jg-nestopia): New variable.
Change-Id: I2f686f43a8339a124b9ef9640638ab182ecf7079
---
(no changes since v1)
gnu/packages/emulators.scm | 33 +++++++++++++++++++++++++++++++++
1 file changed, 33 insertions(+)
diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
index 4c1a705994..34e706188a 100644
--- a/gnu/packages/emulators.scm
+++ b/gnu/packages/emulators.scm
@@ -2429,6 +2429,39 @@ (define-public jg-bsnes
license:isc ;libco
license:lgpl2.1+))))
+(define-public jg-nestopia
+ (package
+ (name "jg-nestopia")
+ (version "1.52.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.com/jgemu/nestopia")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "19qg9hgh25aaym7b81v5g7165v4fyymas6dmzc4z867mzaphbn6s"))))
+ (build-system gnu-build-system)
+ (arguments
+ (list #:tests? #f ;no test suite
+ #:make-flags
+ #~(list (string-append "AR=" #$(ar-for-target))
+ (string-append "CC=" #$(cc-for-target))
+ (string-append "CXX=" #$(cxx-for-target))
+ (string-append "PREFIX=" #$output))
+ #:phases #~(modify-phases %standard-phases
+ (delete 'configure)))) ;no configure script
+ (native-inputs (list jg-api pkg-config))
+ (home-page "https://gitlab.com/jgemu/nestopia")
+ (synopsis "Jolly Good Fork of Nestopia")
+ (description "Nestopia JG is an emulator for the Nintendo Entertainment
+System/Famicom, including support for the Famicom Disk System and VS. System.
+Though originally a fork, Nestopia JG has become the de facto upstream branch
+of the Nestopia emulator.")
+ (license (list license:gpl2+ ;this project
+ license:lgpl2.1+)))) ;nes_ntsc source files
+
(define-public zsnes
(package
(name "zsnes")
--
2.46.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [bug#73488] [PATCH games v3 7/7] gnu: Add jg-cega.
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 " Maxim Cournoyer
` (5 preceding siblings ...)
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 6/7] gnu: Add jg-nestopia Maxim Cournoyer
@ 2024-10-03 7:25 ` Maxim Cournoyer
2024-10-05 13:58 ` bug#73488: [PATCH games v3 0/7] Add Jolly Good and some of its emulators Maxim Cournoyer
7 siblings, 0 replies; 18+ messages in thread
From: Maxim Cournoyer @ 2024-10-03 7:25 UTC (permalink / raw)
To: 73488
Cc: Maxim Cournoyer, Adam Faiz, Liliana Marie Prikler,
宋文武
* gnu/packages/emulators.scm (jg-cega): New variable.
Change-Id: Ice3799d9aa4600006ac386fa40e80fb97b3018c8
---
(no changes since v1)
gnu/packages/emulators.scm | 36 ++++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)
diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
index 34e706188a..b29a50bdfb 100644
--- a/gnu/packages/emulators.scm
+++ b/gnu/packages/emulators.scm
@@ -2462,6 +2462,42 @@ (define-public jg-nestopia
(license (list license:gpl2+ ;this project
license:lgpl2.1+)))) ;nes_ntsc source files
+(define-public jg-cega
+ (package
+ (name "jg-cega")
+ (version "0.6.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.com/jgemu/cega")
+ (commit version)))
+ (modules '((guix build utils)))
+ (snippet '(delete-file-recursively "deps/"))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "10qxfch08850zivxf4s1mhh0clx4h1cfn440acm6d7glb6wbv822"))))
+ (build-system gnu-build-system)
+ (arguments
+ (list #:tests? #f ;no test suite
+ #:make-flags
+ #~(list (string-append "CC=" #$(cc-for-target))
+ (string-append "PREFIX=" #$output))
+ #:phases #~(modify-phases %standard-phases
+ (delete 'configure))))
+ (native-inputs (list jg-api pkg-config))
+ (inputs (list speexdsp))
+ (home-page "https://gitlab.com/jgemu/cega")
+ (synopsis "Jolly Good SG-1000, SMS, Game Gear, and Mega Drive/Genesis \
+emulator")
+ (description "Cega is a cycle accurate emulator for the Sega SG-1000,
+Master System, and Game Gear written specifically for The Jolly Good API.
+Mega Drive emulation is in an experimental state.")
+ (license (list license:mpl2.0
+ license:expat ;src/emu2413, src/m68k
+ license:bsd-3 ;src/ymfm
+ license:zlib)))) ;src/z80.h
+
(define-public zsnes
(package
(name "zsnes")
--
2.46.0
^ permalink raw reply related [flat|nested] 18+ messages in thread
* [bug#73488] [PATCH games v3 2/7] gnu: bsnes: Remove input labels and use gexps.
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 2/7] gnu: bsnes: Remove input labels and use gexps Maxim Cournoyer via Guix-patches
@ 2024-10-03 7:50 ` Liliana Marie Prikler via Guix-patches
2024-10-03 12:58 ` Maxim Cournoyer
0 siblings, 1 reply; 18+ messages in thread
From: Liliana Marie Prikler via Guix-patches @ 2024-10-03 7:50 UTC (permalink / raw)
To: Maxim Cournoyer, 73488; +Cc: 宋文武, Adam Faiz
Am Donnerstag, dem 03.10.2024 um 16:25 +0900 schrieb Maxim Cournoyer:
> * gnu/packages/emulators.scm (bsnes) [arguments]: Use gexps.
> [inputs]: Remove labels.
> [home-page]: Update URL.
>
> Change-Id: I69046d977c4647f46c1359d62b762149b8f70160
> ---
I think we should write out "G-Expressions". For the header, since we
do both style improvements, I'd just write "Use new package style",
though that one's a bit more controversial ;)
Content-wise LGTM.
^ permalink raw reply [flat|nested] 18+ messages in thread
* [bug#73488] [PATCH games v3 3/7] gnu: Add jg-api.
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 3/7] gnu: Add jg-api Maxim Cournoyer via
@ 2024-10-03 7:51 ` Liliana Marie Prikler via Guix-patches
2024-10-05 13:01 ` Maxim Cournoyer
0 siblings, 1 reply; 18+ messages in thread
From: Liliana Marie Prikler via Guix-patches @ 2024-10-03 7:51 UTC (permalink / raw)
To: Maxim Cournoyer, 73488; +Cc: 宋文武, Adam Faiz
Am Donnerstag, dem 03.10.2024 um 16:25 +0900 schrieb Maxim Cournoyer:
> * gnu/packages/emulators.scm (jg-api): New variable.
>
> Change-Id: I2cd2086560f8353f8260209c4ee0f117c3615917
> ---
>
> (no changes since v1)
>
> gnu/packages/emulators.scm | 26 ++++++++++++++++++++++++++
> 1 file changed, 26 insertions(+)
>
> diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
> index 50a7b67121..09e722b4f4 100644
> --- a/gnu/packages/emulators.scm
> +++ b/gnu/packages/emulators.scm
> @@ -2260,6 +2260,32 @@ (define-public bsnes
> performance, features, and ease of use.")
> (license license:gpl3)))
>
> +(define-public jg-api
> + (package
> + (name "jg-api")
> + (version "1.0.0")
> + (source (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://gitlab.com/jgemu/jg")
> + (commit version)))
> + (file-name (git-file-name name version))
> + (sha256
> + (base32
> +
> "0117cvfvzhrm9fxnryhbnf9r0f8ij4ahhfqiqp5yv11bz2wcyhqh"))))
> + (build-system gnu-build-system)
> + (arguments
> + (list #:tests? #f
#:tests? #f should always go with a comment.
> + #:make-flags #~(list (string-append "PREFIX=" #$output))
> + #:phases #~(modify-phases %standard-phases
> + (delete 'configure)))) ;no configure phase
What about 'bootstrap?
> + (home-page "https://gitlab.com/jgemu/jg")
> + (synopsis "Emulators Plugin API")
> + (description "This package provides the Jolly Good API C and C++
> headers.
> +The Jolly Good API is a shared object or plugin @acronym{API,
> Application
> +Programming Interface} for emulators.")
> + (license license:zlib)))
> +
Cheers
^ permalink raw reply [flat|nested] 18+ messages in thread
* [bug#73488] [PATCH games v3 4/7] gnu: Add jgrf.
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 4/7] gnu: Add jgrf Maxim Cournoyer via Guix-patches
@ 2024-10-03 7:57 ` Liliana Marie Prikler via Guix-patches
2024-10-05 12:57 ` Maxim Cournoyer
0 siblings, 1 reply; 18+ messages in thread
From: Liliana Marie Prikler via Guix-patches @ 2024-10-03 7:57 UTC (permalink / raw)
To: Maxim Cournoyer, 73488; +Cc: 宋文武, Adam Faiz
Am Donnerstag, dem 03.10.2024 um 16:25 +0900 schrieb Maxim Cournoyer:
> * gnu/packages/emulators.scm (jgrf): New variable.
>
> Change-Id: I0cf706e66977ceb96902dcd54f9175031e129445
> ---
>
> Changes in v3:
> - Remove extraneous 'modules' field from origin
> - Use latest commit, with support for search paths
>
> Changes in v2:
> - Sort inputs
>
> gnu/packages/emulators.scm | 70
> ++++++++++++++++++++++++++++++++++++++
> 1 file changed, 70 insertions(+)
>
> diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
> index 09e722b4f4..ae2a78a0f6 100644
> --- a/gnu/packages/emulators.scm
> +++ b/gnu/packages/emulators.scm
> @@ -2286,6 +2286,76 @@ (define-public jg-api
> Programming Interface} for emulators.")
> (license license:zlib)))
>
> +(define-public jgrf
> + ;; Unreleased work contains support for the JOLLYGOOD_*
> environment
> + ;; variables used to locate cores and assets.
> + (let ((commit "7d5c2b8593020e92d5b9b051dfb94be7f17c04ce")
> + (revision "0"))
> + (package
> + (name "jgrf")
> + (version (git-version "1.1.0" revision commit))
> + (source (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://gitlab.com/jgemu/jgrf")
> + (commit commit)))
> + (file-name (git-file-name name version))
> + (snippet '(begin
> + ;; TODO: Package md5.h and md5.c from
> + ;;
> http://openwall.info/wiki/people/solar/software
> + ;; /public-domain-source-code/md5,
> + ;; remove these bundled files and set
> the
> + ;; USE_EXTERNAL_MD5 Make flag to 1.
> + ;; (delete-file "deps/md5.h")
> + ;; (delete-file "deps/md5.c")
> + (use-modules (guix build utils))
> + (delete-file-recursively "deps/miniz")))
Uhm… why not use (modules '((guix build utils))) tho?
> + (sha256
> + (base32
> +
> "0gkmyyaxpj3szw6r1zm5850h5f362p0jdr5w70g2j0939rqn5db4"))))
> + (build-system gnu-build-system)
> + (arguments
> + (list #:tests? #f ;no test suite
> + #:make-flags
> + #~(list (string-append "AR=" #$(ar-for-target))
> + (string-append "CC=" #$(cc-for-target))
> + (string-append "CXX=" #$(cxx-for-target))
> + (string-append "PREFIX=" #$output))
> + #:phases #~(modify-phases %standard-phases
> + (delete 'configure))))
> + (native-inputs (list jg-api pkg-config))
> + (inputs
> + (list flac
> + libepoxy
> + libsamplerate
> + lzo
> + miniz
> + sdl2
> + soxr
> + speexdsp
> + zlib
> + `(,zstd "lib")))
> + (native-search-paths
> + (list (search-path-specification
> + (variable "JOLLYGOOD_CORE_DIRS")
> + (files '("lib/jollygood")))
> + (search-path-specification
> + (variable "JOLLYGOOD_ASSET_DIRS")
> + (files '("share/jollygood")))))
> + (home-page "https://gitlab.com/jgemu/jgrf")
> + (synopsis "Jolly Good Reference Frontend")
> + (description "The Jolly Good Reference Frontend (accessible
> via the
> +@command{jollygood} command) is the simplest possible frontend to
Are you sure about "simplest"?
> The Jolly
> +Good API. It may be used to run emulators built as shared objects,
> or as a
> +\"white-label\" frontend for statically linked standalone
> emulators.")
This phrasing is somewhat confusing to me. So it can run emulators
both as shared objects and as statically linked executables?
> + ;; The main license is BSD-3; the bundled source licenses are
> also listed
> + ;; below.
> + (license (list license:bsd-3 ;this software, gltext.h,
> lodepng.c, lodepng.h
> + license:expat ;ezmenu.h source, musl_memmem.c,
> + ;parson.h, parson.c,
> tconfig.h, tconfig.c
> + license:public-domain ;md5.h, md5.c, parg.h,
> parg.c
> + license:cc0)))))
> +
Cheers
^ permalink raw reply [flat|nested] 18+ messages in thread
* [bug#73488] [PATCH games v3 5/7] gnu: Add jg-bsnes.
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 5/7] gnu: Add jg-bsnes Maxim Cournoyer
@ 2024-10-03 8:00 ` Liliana Marie Prikler via Guix-patches via
2024-10-05 13:38 ` Maxim Cournoyer
0 siblings, 1 reply; 18+ messages in thread
From: Liliana Marie Prikler via Guix-patches via @ 2024-10-03 8:00 UTC (permalink / raw)
To: Maxim Cournoyer, 73488; +Cc: 宋文武, Adam Faiz
Am Donnerstag, dem 03.10.2024 um 16:25 +0900 schrieb Maxim Cournoyer:
> * gnu/packages/emulators.scm (jg-bsnes): New variable.
>
> Change-Id: If88a7bea0c87c8af8fce051f8bec891ff249449f
> ---
>
> Changes in v3:
> - Remove extraneous 'modules' field from origin
>
> gnu/packages/emulators.scm | 73
> ++++++++++++++++++++++++++++++++++++++
> 1 file changed, 73 insertions(+)
>
> diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
> index ae2a78a0f6..4c1a705994 100644
> --- a/gnu/packages/emulators.scm
> +++ b/gnu/packages/emulators.scm
> @@ -2356,6 +2356,79 @@ (define-public jgrf
> license:public-domain ;md5.h, md5.c, parg.h,
> parg.c
> license:cc0)))))
>
> +(define-public jg-bsnes
> + (package
> + (name "jg-bsnes")
> + (version "2.0.0")
> + (source (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://gitlab.com/jgemu/bsnes")
> + (commit version)))
> + (file-name (git-file-name name version))
> + ;; XXX: Some source dependencies are bundled and are
> not easy to
> + ;; unbundle due to the build system building an object
> combining
> + ;; their sources directly:
> + ;; - byuuML
> + ;; - gb
> + ;; - libcoco
> + ;; - snes_spc
If possible, file an upstream bug and refer to that.
> + (snippet '(begin
> + (use-modules (guix build utils))
I'm really not sure we should write (use-modules …) within the snippet
like that.
> + (delete-file-recursively
> "deps/libsamplerate")))
> + (sha256
> + (base32
> +
> "0z1ka4si8vcb0j6ih087cni18vpgfd3qnaw24awycxz23xc0jkdv"))))
> + (build-system gnu-build-system)
> + (arguments
> + (list #:tests? #f ;no test suite
> + #:make-flags
> + #~(list (string-append "AR=" #$(ar-for-target))
> + (string-append "CC=" #$(cc-for-target))
> + (string-append "CXX=" #$(cxx-for-target))
> + (string-append "PREFIX=" #$output))
> + #:phases #~(modify-phases %standard-phases
> + (delete 'configure)))) ;no configure script
> + (native-inputs (list jg-api pkg-config))
> + (inputs (list libsamplerate))
> + (home-page "https://gitlab.com/jgemu/bsnes")
> + (synopsis "Jolly Good Fork of bsnes")
> + (description "@code{bsnes-jg} is a cycle accurate emulator for
> the Super
> +Famicom/Super Nintendo Entertainment System, including support for
> the Super
> +Game Boy, BS-X Satellaview, and Sufami Turbo. @code{bsnes-jg} is a
> fork of
> +@code{bsnes} v115, Many changes have been made post-fork:
> +@itemize
> +@item Higher quality resampler with settings
> +@item Improved performance without loss of accuracy
> +@item Portability improvements
> +@item Removal of accuracy-reducing hacks and unnecessary code
> +@item Significant increase in standards compliance
> +@item Translation to the C++ Standard Library (ISO C++11)
> +@end itemize
> +
> +In particular, it uses much less @acronym{CPU, Central Processing
> Unit}
> +compared to the original @code{bsnes} (though not as little as
> @code{zsnes}).
> +
> +The supported file formats are:
> +@itemize @file
> +@item .sfc
> +@item .smc
> +@item .bs
> +@item .st
> +@item .fig
> +@item .swc
> +@end itemize
> +
> +This is intended to be used with the Jolly Good Reference Frontend
> +@command{jollygood} command from the @code{jgrf} package.")
> + ;; The project license is GPL3+. The bundled source licenses
> are also
> + ;; listed below.
> + (license (list license:gpl3+
> + license:bsd-3 ;byuuML
> + license:expat ;gb
> + license:isc ;libco
> + license:lgpl2.1+))))
> +
Cheers
^ permalink raw reply [flat|nested] 18+ messages in thread
* [bug#73488] [PATCH games v3 2/7] gnu: bsnes: Remove input labels and use gexps.
2024-10-03 7:50 ` Liliana Marie Prikler via Guix-patches
@ 2024-10-03 12:58 ` Maxim Cournoyer
0 siblings, 0 replies; 18+ messages in thread
From: Maxim Cournoyer @ 2024-10-03 12:58 UTC (permalink / raw)
To: Liliana Marie Prikler; +Cc: 73488, 宋文武, Adam Faiz
Hi Liliana,
Liliana Marie Prikler <liliana.prikler@gmail.com> writes:
> Am Donnerstag, dem 03.10.2024 um 16:25 +0900 schrieb Maxim Cournoyer:
>> * gnu/packages/emulators.scm (bsnes) [arguments]: Use gexps.
>> [inputs]: Remove labels.
>> [home-page]: Update URL.
>>
>> Change-Id: I69046d977c4647f46c1359d62b762149b8f70160
>> ---
> I think we should write out "G-Expressions".
I think both are acceptable; just like we can write sexps for
S-Expressions, gexps for G-Expressions seems to the point (and requires
less typing).
> For the header, since we
> do both style improvements, I'd just write "Ujse new package style",
> though that one's a bit more controversial ;)
Yeah. That may not age too well if/when we have yet a newer package
style, haha!
> Content-wise LGTM.
Thanks for taking a look.
--
Thanks,
Maxim
^ permalink raw reply [flat|nested] 18+ messages in thread
* [bug#73488] [PATCH games v3 4/7] gnu: Add jgrf.
2024-10-03 7:57 ` Liliana Marie Prikler via Guix-patches
@ 2024-10-05 12:57 ` Maxim Cournoyer
0 siblings, 0 replies; 18+ messages in thread
From: Maxim Cournoyer @ 2024-10-05 12:57 UTC (permalink / raw)
To: Liliana Marie Prikler; +Cc: 73488, Adam Faiz, 宋文武
Hi Liliana,
Liliana Marie Prikler <liliana.prikler@gmail.com> writes:
> Am Donnerstag, dem 03.10.2024 um 16:25 +0900 schrieb Maxim Cournoyer:
>> * gnu/packages/emulators.scm (jgrf): New variable.
>>
>> Change-Id: I0cf706e66977ceb96902dcd54f9175031e129445
[...]
>> +(define-public jgrf
>> + ;; Unreleased work contains support for the JOLLYGOOD_*
>> environment
>> + ;; variables used to locate cores and assets.
>> + (let ((commit "7d5c2b8593020e92d5b9b051dfb94be7f17c04ce")
>> + (revision "0"))
>> + (package
>> + (name "jgrf")
>> + (version (git-version "1.1.0" revision commit))
>> + (source (origin
>> + (method git-fetch)
>> + (uri (git-reference
>> + (url "https://gitlab.com/jgemu/jgrf")
>> + (commit commit)))
>> + (file-name (git-file-name name version))
>> + (snippet '(begin
>> + ;; TODO: Package md5.h and md5.c from
>> + ;;
>> http://openwall.info/wiki/people/solar/software
>> + ;; /public-domain-source-code/md5,
>> + ;; remove these bundled files and set
>> the
>> + ;; USE_EXTERNAL_MD5 Make flag to 1.
>> + ;; (delete-file "deps/md5.h")
>> + ;; (delete-file "deps/md5.c")
>> + (use-modules (guix build utils))
>> + (delete-file-recursively "deps/miniz")))
> Uhm… why not use (modules '((guix build utils))) tho?
I think the (guix build utils) is now implicitly added to the snippet
environment, but I can't find the commit/code that does so. If that
wasn't the case the above would fail though.
>> + (sha256
>> + (base32
>> +
>> "0gkmyyaxpj3szw6r1zm5850h5f362p0jdr5w70g2j0939rqn5db4"))))
>> + (build-system gnu-build-system)
>> + (arguments
>> + (list #:tests? #f ;no test suite
>> + #:make-flags
>> + #~(list (string-append "AR=" #$(ar-for-target))
>> + (string-append "CC=" #$(cc-for-target))
>> + (string-append "CXX=" #$(cxx-for-target))
>> + (string-append "PREFIX=" #$output))
>> + #:phases #~(modify-phases %standard-phases
>> + (delete 'configure))))
>> + (native-inputs (list jg-api pkg-config))
>> + (inputs
>> + (list flac
>> + libepoxy
>> + libsamplerate
>> + lzo
>> + miniz
>> + sdl2
>> + soxr
>> + speexdsp
>> + zlib
>> + `(,zstd "lib")))
>> + (native-search-paths
>> + (list (search-path-specification
>> + (variable "JOLLYGOOD_CORE_DIRS")
>> + (files '("lib/jollygood")))
>> + (search-path-specification
>> + (variable "JOLLYGOOD_ASSET_DIRS")
>> + (files '("share/jollygood")))))
>> + (home-page "https://gitlab.com/jgemu/jgrf")
>> + (synopsis "Jolly Good Reference Frontend")
>> + (description "The Jolly Good Reference Frontend (accessible
>> via the
>> +@command{jollygood} command) is the simplest possible frontend to
> Are you sure about "simplest"?
I've adjusted to "aims to be the simplest possible frontend [...]".
>> The Jolly
>> +Good API. It may be used to run emulators built as shared objects,
>> or as a
>> +\"white-label\" frontend for statically linked standalone
>> emulators.")
> This phrasing is somewhat confusing to me. So it can run emulators
> both as shared objects and as statically linked executables?
That's my understanding too. If you developed just an emulator and want
to distribute it in a more usable form, you could build the whole thing
as a static binary and distribute that, as I understand it.
Thanks for taking a look!
--
Thanks,
Maxim
^ permalink raw reply [flat|nested] 18+ messages in thread
* [bug#73488] [PATCH games v3 3/7] gnu: Add jg-api.
2024-10-03 7:51 ` Liliana Marie Prikler via Guix-patches
@ 2024-10-05 13:01 ` Maxim Cournoyer
0 siblings, 0 replies; 18+ messages in thread
From: Maxim Cournoyer @ 2024-10-05 13:01 UTC (permalink / raw)
To: Liliana Marie Prikler; +Cc: 73488, Adam Faiz, 宋文武
Hi,
Liliana Marie Prikler <liliana.prikler@gmail.com> writes:
> Am Donnerstag, dem 03.10.2024 um 16:25 +0900 schrieb Maxim Cournoyer:
>> * gnu/packages/emulators.scm (jg-api): New variable.
>>
>> Change-Id: I2cd2086560f8353f8260209c4ee0f117c3615917
>> ---
>>
>> (no changes since v1)
>>
>> gnu/packages/emulators.scm | 26 ++++++++++++++++++++++++++
>> 1 file changed, 26 insertions(+)
>>
>> diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
>> index 50a7b67121..09e722b4f4 100644
>> --- a/gnu/packages/emulators.scm
>> +++ b/gnu/packages/emulators.scm
>> @@ -2260,6 +2260,32 @@ (define-public bsnes
>> performance, features, and ease of use.")
>> (license license:gpl3)))
>>
>> +(define-public jg-api
>> + (package
>> + (name "jg-api")
>> + (version "1.0.0")
>> + (source (origin
>> + (method git-fetch)
>> + (uri (git-reference
>> + (url "https://gitlab.com/jgemu/jg")
>> + (commit version)))
>> + (file-name (git-file-name name version))
>> + (sha256
>> + (base32
>> +
>> "0117cvfvzhrm9fxnryhbnf9r0f8ij4ahhfqiqp5yv11bz2wcyhqh"))))
>> + (build-system gnu-build-system)
>> + (arguments
>> + (list #:tests? #f
> #:tests? #f should always go with a comment.
Good call; I've added the "standard" ";no test suite" inline comment.
>> + #:make-flags #~(list (string-append "PREFIX=" #$output))
>> + #:phases #~(modify-phases %standard-phases
>> + (delete 'configure)))) ;no configure phase
> What about 'bootstrap?
No need to mess with it; it checks if a "configure" script exists (which
doesn't in this case -- it's a pure Make-based build system) and when it
doesn't it simply does:
--8<---------------cut here---------------start------------->8---
(format #t "GNU build system bootstrapping not needed~%")
--8<---------------cut here---------------end--------------->8---
--
Thanks,
Maxim
^ permalink raw reply [flat|nested] 18+ messages in thread
* [bug#73488] [PATCH games v3 5/7] gnu: Add jg-bsnes.
2024-10-03 8:00 ` Liliana Marie Prikler via Guix-patches via
@ 2024-10-05 13:38 ` Maxim Cournoyer
0 siblings, 0 replies; 18+ messages in thread
From: Maxim Cournoyer @ 2024-10-05 13:38 UTC (permalink / raw)
To: Liliana Marie Prikler; +Cc: 73488, Adam Faiz, 宋文武
Hi,
Liliana Marie Prikler <liliana.prikler@gmail.com> writes:
> Am Donnerstag, dem 03.10.2024 um 16:25 +0900 schrieb Maxim Cournoyer:
>> * gnu/packages/emulators.scm (jg-bsnes): New variable.
>>
>> Change-Id: If88a7bea0c87c8af8fce051f8bec891ff249449f
[...]
>> +(define-public jg-bsnes
>> + (package
>> + (name "jg-bsnes")
>> + (version "2.0.0")
>> + (source (origin
>> + (method git-fetch)
>> + (uri (git-reference
>> + (url "https://gitlab.com/jgemu/bsnes")
>> + (commit version)))
>> + (file-name (git-file-name name version))
>> + ;; XXX: Some source dependencies are bundled and are
>> not easy to
>> + ;; unbundle due to the build system building an object
>> combining
>> + ;; their sources directly:
>> + ;; - byuuML
>> + ;; - gb
>> + ;; - libcoco
>> + ;; - snes_spc
> If possible, file an upstream bug and refer to that.
I don't think that's too feasible; these sources are intended to be used in
source forms; they don't ship with any build system. See for example
byuuML [0]. gb corresponds to the 'core' source files of SameBoy:
https://github.com/LIJI32/SameBoy; it doesn't seem possible to build a
'core' library from that, although its symbols are probably part of the
a sameboy.so library we could build as part as our 'sameboy' package, so
this could be a possibility.
libco is supposed to be removed at some point [1] and finally spec_dsp
appears to be a modified forked of the original spec_dsp.c and spc_dsp.h
(no build system), making it more source than library.
I've still opened an issue mentioning that it'd be nice to use more deps
from the system, and that it seems it'd be practical to do so for
SameBoy [2].
[0] https://github.com/SolraBizna/byuuML/tree/master?tab=readme-ov-file#using-the-byuuml-library
[1] https://gitlab.com/jgemu/bsnes/-/issues/3
[2] https://gitlab.com/jgemu/bsnes/-/issues/6
--
Thanks,
Maxim
^ permalink raw reply [flat|nested] 18+ messages in thread
* bug#73488: [PATCH games v3 0/7] Add Jolly Good and some of its emulators
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 " Maxim Cournoyer
` (6 preceding siblings ...)
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 7/7] gnu: Add jg-cega Maxim Cournoyer
@ 2024-10-05 13:58 ` Maxim Cournoyer
7 siblings, 0 replies; 18+ messages in thread
From: Maxim Cournoyer @ 2024-10-05 13:58 UTC (permalink / raw)
To: 73488-done; +Cc: 宋文武, Liliana Marie Prikler, Adam Faiz
Hi,
Maxim Cournoyer <maxim.cournoyer@gmail.com> writes:
> This series adds the Jolly Good emulator API and reference user
> interface (jgrf), and some core files (emulator plugins made to be used by
> it). Currently I've packaged and tested their bsnes, nestopia and cega ports.
With most of Liliana's comments addressed in what would be have been v4,
I went ahead and pushed this to master with commit 1ca236a02a and
following; thanks to Liliana for the review.
If I missed anything, let me know! Otherwise, enjoy.
--
Thanks,
Maxim
^ permalink raw reply [flat|nested] 18+ messages in thread
end of thread, other threads:[~2024-10-05 14:00 UTC | newest]
Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-09-26 2:35 [bug#73488] [PATCH 0/7] Add Jolly Good and some of its emulators Maxim Cournoyer
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 " Maxim Cournoyer
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 1/7] teams: Register (gnu packages emulators) to games team Maxim Cournoyer
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 2/7] gnu: bsnes: Remove input labels and use gexps Maxim Cournoyer via Guix-patches
2024-10-03 7:50 ` Liliana Marie Prikler via Guix-patches
2024-10-03 12:58 ` Maxim Cournoyer
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 3/7] gnu: Add jg-api Maxim Cournoyer via
2024-10-03 7:51 ` Liliana Marie Prikler via Guix-patches
2024-10-05 13:01 ` Maxim Cournoyer
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 4/7] gnu: Add jgrf Maxim Cournoyer via Guix-patches
2024-10-03 7:57 ` Liliana Marie Prikler via Guix-patches
2024-10-05 12:57 ` Maxim Cournoyer
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 5/7] gnu: Add jg-bsnes Maxim Cournoyer
2024-10-03 8:00 ` Liliana Marie Prikler via Guix-patches via
2024-10-05 13:38 ` Maxim Cournoyer
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 6/7] gnu: Add jg-nestopia Maxim Cournoyer
2024-10-03 7:25 ` [bug#73488] [PATCH games v3 7/7] gnu: Add jg-cega Maxim Cournoyer
2024-10-05 13:58 ` bug#73488: [PATCH games v3 0/7] Add Jolly Good and some of its emulators Maxim Cournoyer
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.