Commit graph

449 commits

Author SHA1 Message Date
Anderson Torres
e493d73b14
gnu: Add ares.
* gnu/packages/emulators.scm (ares): New variable.

Fixes: #1510
Change-Id: I6363bc912a408aeb4ed014698765ca9c62463091
Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
2025-08-02 10:36:42 +08:00
Maxim Cournoyer
186a9714a3
gnu: dolphin-emu: Update to 2506-0.79a3af2.
* gnu/packages/emulators.scm (dolphin-emu): Update to 2506-0.79a3af2.
[source] {patches}: Update patches.
(dolphin-rcheevos-submodule): New variable.
[source]: Refine and update snippet.
[#:phases] {remove-unittests-target-post-build-command}: Delete.
{generate-fonts&hardcode-libvulkan-path}: Fix typo in phase name. Remove
obsolete cstdint patching.
{post-check}: Delete.
[#:configure-flags]: Streamline. Add -DUSE_DISCORD_PRESENCE=OFF.
[native-inputs]: Add googletest
[inputs]: Replace ffmpeg-4 with ffmpeg. Replace fmt-7 with fmt-11. Replace
gtk+-2 with gtk+ and minizip-ng-compat with minizip-ng. Add lz4,
mgba-for-dolphin, qtsvg, spirv-cross, spng, tinygltf, vulkan-headers,
vulkan-memory-allocator and watcher. Replace qtbase-5 with qtbase. Replace
sdl2 with sdl3. Replace sfml-2 with sfml. Remove soundtouch-1/integer-samples.
(libretro-dolphin-emu): Update to 5.0-1.a09f78f.
[source]: Break inheritance with dolphin-emu, adjusting snippet for its older
code base.
[patches]: Apply libretro-dolphin-emu-libusb-assert.patch and
libretro-dolphin-emu-vulkan-headers.patch.
[#:phases] {link-unittest-to-gtest}: New phase.
[inputs]: Do not inherit from dolphin-emu. Replace fmt-7 with fmt. Replace
minizip-ng with minizip-ng-compat.
googletest, vulkan-headers.
* gnu/packages/patches/dolphin-emu-data.patch: Delete file.
* gnu/packages/patches/dolphin-emu-unbundle-tinygltf.patch
* gnu/packages/patches/dolphin-emu-unbundle-watcher.patch
* gnu/packages/patches/libretro-dolphin-emu-gc-font-tool.patch
* gnu/packages/patches/libretro-dolphin-emu-libusb-assert.patch
* gnu/packages/patches/libretro-dolphin-emu-vulkan-headers.patch: New files.
* gnu/local.mk (dist_patch_DATA): Update accordingly.

Fixes: #1327
Change-Id: I5a870a5e29c1ca243fb1d5e049ee06c5e254a04f
2025-08-01 11:47:41 +09:00
Maxim Cournoyer
8ac4fa47d8
gnu: Add mgba-for-dolphin.
* gnu/packages/emulators.scm (mgba-for-dolphin): New variable.

Change-Id: I8ff0a21cc91d79f010b38d3f2d675e3cfad2761a
2025-08-01 11:47:41 +09:00
Maxim Cournoyer
a0f061d1b6
gnu: mgba: Update to 0.10.5 and enable tests.
* gnu/packages/emulators.scm (mgba): Update to 0.10.5.
[snippet]: Refine so that only what's kept is listed.
[build-system]: Switch to qt-build-system.
[#:tests?]: Delete argument.
[#:configure-flags]: Remove -DBUILD_LTO=OFF. Add -DBUILD_SUITE=ON and
-DUSE_DISCORD_RPC=OFF.
[#:qtbase]: New argument.
[native-inputs]: Add cmocka. Replace qttools-5 with qtools.
[inputs]: Replace qtbase-5 with qtbase, qtmultimedia-5 with qtmultimedia.
[license]: Reformat for clarity.

Change-Id: I54c85bc6aa2668de6c009812a066c5724485a2c4
2025-08-01 11:47:41 +09:00
Maxim Cournoyer
5259f89b07
gnu: sfml: Update to 3.0.1.
* gnu/packages/game-development.scm (sfml): Update to 3.0.1.
[source]: Fetch from git. Refine snippet.
[#:tests?]: New argument.
[#:configure-flags]: Remove SFML_INSTALL_PKGCONFIG_FILES and
SFML_OS_PKGCONFIG_DIR flags. Add BUILD_SHARED_LIBS and CMAKE_CXX_FLAGS flag.
[native-inputs]: Add miniaudio and minimp3.
[inputs]: Remove labels and sort. Add libxcursor, libxi and vulkan-headers.
(sfml-2): New variable.
(csfml): Update to 2.6.1.
[inputs]: Replace sfml with sfml-2.
* gnu/packages/emulators.scm (dolphin-emu) [inputs]: Replace sfml with sfml-2.
* gnu/packages/games.scm (extremetuxracer, mars, schiffbruch)
(marble-marcher): Likewise.

Change-Id: Id61c4ba51798cfc28cc158a9d7fc6308ae4e6f41
2025-08-01 11:47:41 +09:00
Maxim Cournoyer
7f20f528ee
gnu: minizip-ng: Do not build in compatibility mode.
The pkg-config naming (and personality) of minizip-ng changes depending on
whether it's built with minizip-compatibility mode (enabled by default). Since
this package is named minizip-ng and not replacing the original minizip (yet),
preserve its own personality. 'minizip-ng.pc' is required by packages such as
emu-dolphin.

* gnu/packages/compression.scm (minizip-ng)
[#:configure-flags]: Add -DMZ_COMPAT=OFF.
(minizip-ng-compat): New variable.
* gnu/packages/emulators.scm (dolphin-emu) [inputs]: Replace minizip-ng with
minizip-ng-compat.

Change-Id: I71227035ef110162f72b9d0128b5c985c9cd58a5
2025-08-01 11:47:40 +09:00
Maxim Cournoyer
d0f25affe5
gnu: libretro-mupen64plus-nx: Update to 0-1.3a67619.
* gnu/packages/emulators.scm (libretro-mupen64plus-nx): Update to 0-1.3a67619.

Change-Id: Ib352816757f4ed22d69a258975094b406d1eabe8
2025-07-30 08:46:13 +09:00
Maxim Cournoyer
1aae2062d9
gnu: jg-cega: Update to 0.6.1.
* gnu/packages/emulators.scm (jg-cega): Update to 0.6.1.

Change-Id: Ic13a0f086af8306ad39759475b0f6f55cd6b1360
2025-07-30 08:46:13 +09:00
Maxim Cournoyer
b46c9822d2
gnu: jg-nestopia: Update to 1.53.1.
* gnu/packages/emulators.scm (jg-nestopia): Update to 1.53.1.

Change-Id: Icec6d83cbb21aca3666287b07837692d4f71d3a0
2025-07-30 08:46:13 +09:00
Maxim Cournoyer
415a348407
gnu: jgrf: Update to 1.2.1.
* gnu/packages/emulators.scm (jgrf): Update to 1.2.1.

Change-Id: I05c5cd942a03831857f92a16195bca1e596db9c9
2025-07-30 08:46:13 +09:00
Maxim Cournoyer
a17c255437
gnu: libretro-bsnes-jg: Update to 0-1.6400024.
* gnu/packages/emulators.scm (libretro-bsnes-jg): Update to 0-1.6400024.
[synopsis]: Capitalize first word.

Change-Id: Idb241ed58480abbc27d7a1c57e485cbd760e8cee
2025-07-30 08:45:51 +09:00
Maxim Cournoyer
fee97483d8
gnu: jg-bsnes: Update to 2.0.2.
* gnu/packages/emulators.scm (jg-bsnes): Update to 2.0.2.

Change-Id: I58af4940ccdec02809704803fe8e3c3e00129d3e
2025-07-30 08:29:04 +09:00
Maxim Cournoyer
bc2625db7d
gnu: retroarch-joypad-autoconfig: Update to 1.21.1.
* gnu/packages/emulators.scm (retroarch-joypad-autoconfig): Update to 1.21.1.

Change-Id: Idd6c97fee1d3b266ea453216c118380be3746ec1
2025-07-26 17:41:44 +09:00
Maxim Cournoyer
346dcd7d2e
gnu: libretro-database: Update to 1.21.1.
* gnu/packages/emulators.scm (libretro-database): Update to 1.21.1.

Change-Id: Ie7479e1a84b93e55e125f39f2a56227dcea8a316
2025-07-26 17:41:44 +09:00
Maxim Cournoyer
d579ccacb7
gnu: libretro-slang-shaders: Update to 0-1.82d91f7.
* gnu/packages/emulators.scm (libretro-slang-shaders): Update to 0-1.82d91f7.

Change-Id: I141cb91489432b7d4c14773644822ab459a8008c
2025-07-26 17:41:43 +09:00
Maxim Cournoyer
12b6e47225
gnu: libretro-core-info: Update to 1.21.1.
* gnu/packages/emulators.scm (libretro-core-info): Update to 1.21.1.

Change-Id: I65031aafd31be4b1f43c646752e235b6b4d3bcfb
2025-07-26 17:41:43 +09:00
Maxim Cournoyer
722116d327
gnu: retroarch-assets: Update to 1.20.0.
* gnu/packages/emulators.scm (retroarch-assets): Update to 1.20.0.

Change-Id: I71e14f042d58911065aa9f7c5326daabff897b3d
2025-07-26 17:41:43 +09:00
Maxim Cournoyer
d5c1f1420b
gnu: retroarch-minimal: Update to 1.21.0.
* gnu/packages/emulators.scm (retroarch-minimal): Update to 1.21.0.
[source]: Remove retroarch-improved-search-paths.patch patch.
[inputs]: Replace qtbase-5 with qtbase.
* gnu/packages/patches/retroarch-improved-search-paths.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): De-register it.

Change-Id: I5f2972c9ad73af060147f9b9b37eb7f8e517cbd9
2025-07-26 17:41:43 +09:00
Maxim Cournoyer
242dceabb4
gnu: higan: Update to 110-0.ad0e11e and modernize.
* gnu/packages/emulators.scm (higan): Update to 110-0.ad0e11e.
[inputs]: Remove labels. Replace gtk+-2 with gtk+ and gtksourceview-2 with
gtksourceview-3.
[arguments]: Use gexps and gexp variables as well as search-input-file in
phases.
<#:make-flags>: Add higan.path and platform flags.
<#:phases> {chdir-to-higan}: Rename to...
{chdir-to-higan-ui}: ... this, switching to higan-ui directory.
{wrap-higan-executable}: Streamline via wrap-program.

Fixes: #1477
Change-Id: I46130180a3b8505233c9baba81789cd0ade262bd
2025-07-22 16:27:14 +09:00
Maxim Cournoyer
729674f8d2
gnu: bsnes-hd: Update to 10.6-0.0bb7b86.
* gnu/packages/emulators.scm (bsnes-hd): Update to 10.6-0.0bb7b86.
[#:make-flags]: Add hiro=gtk3.

Relates-to: #1401
Change-Id: I95ff68eb56dd63cf5b75ff3700ae1b765302ff92
2025-07-22 10:56:03 +09:00
Maxim Cournoyer
4b5a4de167
gnu: bsnes: Update to 115-0.ddc3dc2.
* gnu/packages/emulators.scm (bsnes): Update to 115-0.ddc3dc2.
[inputs]: Remove gtksourceview-2. Add gtk+.
[license]: Update to gpl3+ (or any later version).

Relates-to: #1401
Change-Id: If4ab3f085815f256001e4816767f7f1709f240a8
2025-07-22 09:43:37 +09:00
Andreas Enge
81a956d5fa
gnu: dolphin-emu: Fix build with gcc@14.
* gnu/packages/emulators.scm (dolphin-emu)[arguments]<#:phases>
{'generate-fonts&hardcore-libvulkan-path}: Include a missing header.

Change-Id: I4ac3a69e956369015890663298b1e55aeaee1e5b
2025-07-22 00:29:44 +02:00
Zheng Junjie
366d3e5f5a
gnu: desmume: Fix build.
Fixes: guix/guix#1326.

* gnu/packages/emulators.scm (desmume)[arguments]: Add relax-gcc-14-strictness
phase.

Change-Id: Ie81e6cd7d6f6ac3a10e6c81790560a0e720c9e5e
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-07-19 00:37:11 +01:00
Zheng Junjie
3ab7c7d8e7
gnu: mgba: Fix build.
Fixes: guix/guix#1329.

* gnu/packages/emulators.scm (mgba): Replace libelf with elfutils.

Change-Id: Ib6dfb09327db4695f3fa0b8ba3ff8e8be5fff0fa
2025-07-19 07:10:34 +08:00
Anderson Torres
6217aa4449
gnu: Add stella.
* gnu/packages/emulators.scm (stella): New variable.

Change-Id: Ida327501493b92367fd5a7fb1c8303c66e4a9d8a
Signed-off-by: Steve George <steve@futurile.net>
2025-07-16 13:05:37 +01:00
Nicolas Graves
127e61acc9
gnu: libtifiles2: Replace gettext native-input.
gnu-gettext has an emacs-minimal dependency, and we'd better avoid
this dependency.

* gnu/packages/gnome.scm (libtifiles2)[native-inputs]: Replace
gnu-gettext by gettext-minimal.

Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2025-07-11 08:24:42 +02:00
Nicolas Graves
cef894e377
gnu: libtifiles2: Improve style.
* gnu/packages/emulators.scm (libtifiles2)
  [source, arguments]: Run guix style, guix style -S arguments. Remove
  trailing #t.

Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2025-07-11 08:24:42 +02:00
Nicolas Graves
4069e66fab
gnu: libticables2: Replace gettext native-input.
gnu-gettext has an emacs-minimal dependency, and we'd better avoid
this dependency.

* gnu/packages/gnome.scm (libticables2)[native-inputs]: Replace
gnu-gettext by gettext-minimal.

Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2025-07-11 08:24:42 +02:00
Nicolas Graves
de4b858276
gnu: libticables2: Improve style.
* gnu/packages/emulators.scm (libticables2)
  [source, arguments]: Run guix style, guix style -S arguments. Remove
  trailing #t.

Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2025-07-11 08:24:42 +02:00
Nicolas Graves
4000724043
gnu: libticalcs2: Replace gettext native-input.
gnu-gettext has an emacs-minimal dependency, and we'd better avoid
this dependency.

* gnu/packages/gnome.scm (libticalcs2)[native-inputs]: Replace
gnu-gettext by gettext-minimal.

Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2025-07-11 08:24:42 +02:00
Nicolas Graves
2aeee844f2
gnu: libticalcs2: Improve style.
* gnu/packages/emulators.scm (libticalcs2)
  [source, arguments]: Run guix style, guix style -S arguments. Remove
  trailing #t.

Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2025-07-11 08:24:41 +02:00
Adam Quandour
7aa412d877
gnu: Add melonds.
* gnu/packages/emulators.scm (melonds): New variable.
2025-06-25 10:06:11 +02:00
Sören Tempel
f7f244f5d9
gnu: Add unicorn-2.0.
This older version of unicorn is required by python-angr. Without
it, python-angr does not pass check [0]. angr upstream is aware of
the problem but does not yet support newer versions of unicorn [1].
Other distributions, like Nix, solve this by packaging the older
version of unicorn specifically for angr [2], let's do the same!

* gnu/packages/emulators.scm (unicorn-2.0): New variable.

[0]: https://issues.guix.gnu.org/78132
[1]: https://github.com/angr/angr/issues/4921
[2]: https://github.com/NixOS/nixpkgs/pull/388155

Signed-off-by: Hilton Chain <hako@ultrarare.space>
2025-06-08 01:32:56 +08:00
Ian Eure
b50d22f3df
gnu: scummvm: Update to 2.9.1.
* gnu/packages/emulators.scm (scummvm): Update to 2.9.1.

Change-Id: I80ae95a6878d2ef39c77c6fe9054fd50f44cca8e
2025-05-27 12:56:31 +01:00
Andrew Wong
204954e7d5
gnu: Add flycast.
* gnu/packages/emulators.scm (flycast): New variable.

Change-Id: I358235492a3493c3126f7ca9f738ed2706e36105
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2025-03-23 15:42:26 +01:00
宋文武
92a3a6bdec
gnu: dosbox-staging: Fix SIGBART under Sway/Xwayland.
* gnu/packages/emulators.scm (dosbox-staging) [arguments]: Set build-type to
release.  Remove obsolute phases.

Change-Id: I80fdbb51db3b3373f4d2e299e3951820b2dbb97f
2025-03-05 19:22:07 +08:00
Andrew Wong
18e6031f74
gnu: dosbox-staging: Update to 0.82.0.
* gnu/packages/emulators.scm (dosbox-staging): Update to 0.82.0.
[arguments]: Enable MT-32 emulation.
[inputs]: Add mt32emu, googletest.

Change-Id: Ia8ccdd533be6932e2e4fc3660cb472791194523a
Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
2025-03-05 15:42:05 +08:00
Danny Milosavljevic
3865ef026d
gnu: qtmips: Support wayland.
* gnu/packages/emulators.scm (qtmips)[build-system]: Switch to qt-build-system.
[inputs]: Add qtwayland-5.

Change-Id: Ib0f00ffa89e29cb2c6d156efd2f318b533e1a28b
2025-02-16 14:29:48 +01:00
Maxim Cournoyer
be058cf6fc
gnu: dolphin-emu: Patch data.
This resolves a hang in the menu of the WaveRace game.

* gnu/packages/patches/dolphin-emu-data.patch: New file.
* gnu/packages/patches/libretro-dolphin-emu-data.patch: Likewise.
* gnu/local.mk (dist_patch_DATA): Register them.
* gnu/packages/emulators.scm (dolphin-emu) [source]: Apply dolphin-emu patch.
(libretro-dolphin-emu) [source]: Apply libretro-dolphin-emu patch.

Reviewed-by: Sou Bunnbu (宋文武) <iyzsong@member.fsf.org>
Change-Id: Ie22a7bba527724179f5296a44f1874d2efdbd94c
2025-01-26 22:59:59 +09:00
Maxim Cournoyer
826a9df7dd
gnu: retroarch: Propagate libretro-database.
Otherwise, the search functionality of RetroArch would not work out of the
box.

* gnu/packages/emulators.scm (retroarch) [propagated-inputs]: Add
libretro-database.

Reviewed-by: Sou Bunnbu (宋文武) <iyzsong@member.fsf.org>
Change-Id: I63edad8d3e886a2be2a2f4f48f59fb5cbbf239f8
2025-01-26 22:59:59 +09:00
Maxim Cournoyer
e17ace5e83
gnu: Add libretro-database.
* gnu/packages/emulators.scm (libretro-database): New variable.

Reviewed-by: Sou Bunnbu (宋文武) <iyzsong@member.fsf.org>
Change-Id: I97b10abf9b2984cf2a622517b3c794474e98a3d0
2025-01-26 22:59:59 +09:00
Maxim Cournoyer
f30a31d797
gnu: retroarch-core-info: Rename to libretro-core-info.
This is to match the upstream name.

* gnu/packages/emulators.scm (retroarch-core-info): Rename to...
(libretro-core-info): ... this, and mark the previous name as deprecated.
(retroarch): Adjust accordingly.

Reviewed-by: Sou Bunnbu (宋文武) <iyzsong@member.fsf.org>
Change-Id: I634f4b2ecc6d798b8a5386d9449fd32945453844
2025-01-26 22:59:59 +09:00
Maxim Cournoyer
3b5dfbbfac
gnu: retroarch-core-info: Update to 1.20.0.
* gnu/packages/emulators.scm (retroarch-core-info): Update to 1.20.0.

Reviewed-by: Sou Bunnbu (宋文武) <iyzsong@member.fsf.org>
Change-Id: I85eec43eedf24df44b5d486a2410652ad87536db
2025-01-26 22:59:59 +09:00
Maxim Cournoyer
cab1bff5f1
gnu: retroarch-minimal: Update to 1.20.0.
* gnu/packages/emulators.scm (retroarch-minimal): Update to 1.20.0.

Reviewed-by: Sou Bunnbu (宋文武) <iyzsong@member.fsf.org>
Change-Id: I3b4121d2520ee08a9d8454f2666ed30c140ced5b
2025-01-26 22:59:59 +09:00
Maxim Cournoyer
8d5ae4b0c8
gnu: Add libretro-dolphin-emu.
* gnu/packages/emulators.scm (libretro-dolphin-emu): New variable.

Reviewed-by: Sou Bunnbu (宋文武) <iyzsong@member.fsf.org>
Change-Id: Id05e1d17ff6927bb1492ce2816790f7d94f9e1b8
2025-01-26 22:59:59 +09:00
Maxim Cournoyer
c70a6ffa28
gnu: retroarch-minimal: Add new search paths.
This makes it possible to locate system files provided by libretro cores, as
well as database and cheat files.

* gnu/packages/patches/retroarch-improved-search-paths.patch: Extend patch.
* gnu/packages/emulators.scm (retroarch-minimal) [native-search-paths]:
Register new search paths for the LIBRETRO_CHEATS_DIRECTORY,
LIBRETRO_DATABASE_DIRECTORY and LIBRETRO_SYSTEM_DIRECTORY variables.

Reviewed-by: Sou Bunnbu (宋文武) <iyzsong@member.fsf.org>
Change-Id: I48f9a92608c0e36922ce9dcc9bbb61d6ca915002
2025-01-26 22:59:59 +09:00
Maxim Cournoyer
5aadcaaa65
gnu: dolphin-emu: Build .bin binary files and preserve data ones.
These files are necessary to save games, enable cheat codes, etc.

* gnu/packages/emulators.scm (dolphin-emu) [source] <snippet>: Refine to avoid
deleting a few .bin which are not executable objects but rather configuration
files samples.
[phases]: Add build-codeloader.bin, build-dsp_rom.bin and build-dsp_coefs.bin
phases.
[arguments] <configure-flags>: Add -DDSPTOOL=ON.
[native-inputs]: Add a cross-compiler for powerpc.  Add python-minimal and
python-numpy.

Reviewed-by: Sou Bunnbu (宋文武) <iyzsong@member.fsf.org>
Change-Id: Ida8df1add940e1708c557223409d854aa995e8a5
2025-01-26 22:59:59 +09:00
Maxim Cournoyer
cb36e3d0ae
gnu: dolphin-emu: Unbundle more libraries and enable tests.
* gnu/packages/emulators.scm (dolphin-emu)
[source] <snippet>: Delete bzip2, cubeb, enet, fmt, pugixml, soundtouch,
xxhash and zstd sources and de-register enet, soundtouch and xxhash from the
build system.
[arguments] <#:tests?>: Delete argument.
<#:phases>: Add remove-unittests-target-post-build-command and post-check
phases.
<#:configure-flags>: Specify CMAKE_CXX_FLAGS to locate soundtouch headers.
<#:test-target>: New argument.
[inputs]: Add bzip2, cubeb, enet, fmt-7, minizip-ng, xxhash and
zstd:lib.  Replace soundtouch with soundtouch-1/integer-samples.

Reviewed-by: Sou Bunnbu (宋文武) <iyzsong@member.fsf.org>
Change-Id: Id996d992674f9efbbb2eb562286447a388716a82
2025-01-26 22:59:59 +09:00
Ricardo Wurmus
e8ef8a5497
gnu: unicorn: Add missing inputs.
* gnu/packages/emulators.scm (unicorn)[native-inputs]: Add python-setuptools
and python-wheel.

Change-Id: I8892c06c08b47662cfc952d393f458464e63e3b0
2025-01-20 21:37:48 +01:00
Ricardo Wurmus
85572f0e55
gnu: python-archinfo: Add missing inputs.
* gnu/packages/emulators.scm (python-archinfo)[native-inputs]: Add
python-setuptools and python-wheel.

Change-Id: I8108c69d7ea0a781cc063922cd4a8df8de9678ec
2025-01-20 21:37:48 +01:00