diff options
author | github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> | 2022-10-19 12:01:22 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-10-19 12:01:22 +0000 |
commit | bbaff9a043d0bea6eef68b7e87ee71caafe50d5c (patch) | |
tree | ded704aba47a6169e5f5ac7531802f23004ea7eb /pkgs/applications/emulators/retroarch | |
parent | cea1c3f0cddbd290d326e9dccb3fbb56d4d49578 (diff) | |
parent | 678b994771c7fadfb3d7d3d96ee63fdf6fc574d0 (diff) |
Merge master into staging-next
Diffstat (limited to 'pkgs/applications/emulators/retroarch')
8 files changed, 237 insertions, 227 deletions
diff --git a/pkgs/applications/emulators/retroarch/cores.nix b/pkgs/applications/emulators/retroarch/cores.nix index 1224aa74f29cc..65b117629306f 100644 --- a/pkgs/applications/emulators/retroarch/cores.nix +++ b/pkgs/applications/emulators/retroarch/cores.nix @@ -55,7 +55,7 @@ let , stdenvOverride ? stdenv , src ? (getCoreSrc core) , broken ? false - , version ? "unstable-2022-10-01" + , version ? "unstable-2022-10-18" , platforms ? retroarch.meta.platforms # The resulting core file is based on core name # Setting `normalizeCore` to `true` will convert `-` to `_` on the core filename diff --git a/pkgs/applications/emulators/retroarch/default.nix b/pkgs/applications/emulators/retroarch/default.nix index 1754ad5eccb6b..a8a20682afd43 100644 --- a/pkgs/applications/emulators/retroarch/default.nix +++ b/pkgs/applications/emulators/retroarch/default.nix @@ -4,6 +4,7 @@ , enableNvidiaCgToolkit ? false , withGamemode ? stdenv.isLinux , withVulkan ? stdenv.isLinux +, withWayland ? stdenv.isLinux , alsa-lib , AppKit , dbus @@ -33,19 +34,20 @@ , udev , vulkan-loader , wayland -, which }: let - version = "1.11.0"; + version = "1.12.0"; libretroCoreInfo = fetchFromGitHub { owner = "libretro"; repo = "libretro-core-info"; - sha256 = "sha256-46T87BpzWUQHD7CsCF2sZo065Sl8Y4Sj1zwzBWmCiiU="; - rev = "v${version}"; + sha256 = "sha256-9Sfp/JkMJIe34YGNRxf93fONOBuQxR2pduoJU+xtuF0="; + # Upstream didn't tag a new libretro-core-info in 1.12.0 release + rev = "v1.11.1"; }; - runtimeLibs = lib.optional withVulkan vulkan-loader - ++ lib.optional withGamemode gamemode.lib; + runtimeLibs = + lib.optional withVulkan vulkan-loader ++ + lib.optional withGamemode (lib.getLib gamemode); in stdenv.mkDerivation rec { pname = "retroarch-bare"; @@ -54,60 +56,77 @@ stdenv.mkDerivation rec { src = fetchFromGitHub { owner = "libretro"; repo = "RetroArch"; - sha256 = "sha256-/rOf85TQTXbY9kIETaO5E58f2ZvKPqEFLsbNne/+/lw="; + sha256 = "sha256-doLWNA8aTAllxx3zABtvZaegBQEPIi8276zbytPSdBU="; rev = "v${version}"; }; patches = [ - ./disable-menu_show_core_updater.patch - ./use-fixed-paths-on-libretro_info_path.patch + ./use-fixed-paths.patch ]; postPatch = '' substituteInPlace "frontend/drivers/platform_unix.c" \ - --replace "@libretro_directory@" "$out/lib" \ - --replace "@libretro_info_path@" "$out/share/libretro/info" + --subst-var-by libretro_directory "$out/lib" \ + --subst-var-by libretro_info_path "$out/share/libretro/info" \ + --subst-var-by out "$out" substituteInPlace "frontend/drivers/platform_darwin.m" \ - --replace "@libretro_directory@" "$out/lib" \ - --replace "@libretro_info_path@" "$out/share/libretro/info" + --subst-var-by libretro_directory "$out/lib" \ + --subst-var-by libretro_info_path "$out/share/libretro/info" ''; nativeBuildInputs = [ pkg-config ] ++ - lib.optional stdenv.isLinux wayland ++ + lib.optional withWayland wayland ++ lib.optional (runtimeLibs != [ ]) makeWrapper; - buildInputs = [ ffmpeg_4 freetype libxml2 libGLU libGL python3 SDL2 which ] ++ - lib.optional enableNvidiaCgToolkit nvidia_cg_toolkit ++ - lib.optional withVulkan vulkan-loader ++ - lib.optionals stdenv.isDarwin [ libobjc AppKit Foundation ] ++ - lib.optionals stdenv.isLinux [ - alsa-lib - dbus - libX11 - libXdmcp - libXext - libXxf86vm - libdrm - libpulseaudio - libv4l - libxkbcommon - mesa - udev - wayland - ]; + buildInputs = [ + ffmpeg_4 + freetype + libGL + libGLU + libxml2 + python3 + SDL2 + ] ++ + lib.optional enableNvidiaCgToolkit nvidia_cg_toolkit ++ + lib.optional withVulkan vulkan-loader ++ + lib.optional withWayland wayland ++ + lib.optionals stdenv.isDarwin [ libobjc AppKit Foundation ] ++ + lib.optionals stdenv.isLinux [ + alsa-lib + dbus + libX11 + libXdmcp + libXext + libXxf86vm + libdrm + libpulseaudio + libv4l + libxkbcommon + mesa + udev + ]; enableParallelBuilding = true; - configureFlags = lib.optionals stdenv.isLinux [ "--enable-kms" "--enable-egl" "--enable-dbus" ]; + configureFlags = [ + "--disable-update_cores" + ] ++ + lib.optionals stdenv.isLinux [ + "--enable-dbus" + "--enable-egl" + "--enable-kms" + ]; postInstall = '' - mkdir -p $out/share/libretro/info # TODO: ideally each core should have its own core information + mkdir -p $out/share/libretro/info cp -r ${libretroCoreInfo}/* $out/share/libretro/info - '' + lib.optionalString (runtimeLibs != [ ]) '' + '' + + lib.optionalString (runtimeLibs != [ ]) '' wrapProgram $out/bin/retroarch \ --prefix LD_LIBRARY_PATH ':' ${lib.makeLibraryPath runtimeLibs} - '' + lib.optionalString stdenv.isDarwin '' + '' + + lib.optionalString stdenv.isDarwin '' # https://github.com/libretro/RetroArch/blob/master/retroarch-apple-packaging.sh app=$out/Applications/RetroArch.app mkdir -p $app/Contents/MacOS diff --git a/pkgs/applications/emulators/retroarch/disable-menu_show_core_updater.patch b/pkgs/applications/emulators/retroarch/disable-menu_show_core_updater.patch deleted file mode 100644 index 427cb4871dc96..0000000000000 --- a/pkgs/applications/emulators/retroarch/disable-menu_show_core_updater.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 546b343294209abbb193883ab76b679b7f99c6d3 Mon Sep 17 00:00:00 2001 -From: Thiago Kenji Okada <thiagokokada@gmail.com> -Date: Sat, 20 Nov 2021 16:03:50 -0300 -Subject: [PATCH] Disable "menu_show_core_updater" - ---- - retroarch.cfg | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/retroarch.cfg b/retroarch.cfg -index cdcb199c9f..ab72f3920f 100644 ---- a/retroarch.cfg -+++ b/retroarch.cfg -@@ -681,7 +681,7 @@ - # menu_show_online_updater = true - - # If disabled, will hide the ability to update cores (and core info files) inside the menu. --# menu_show_core_updater = true -+menu_show_core_updater = false - - # If disabled, the libretro core will keep running in the background when we - # are in the menu. --- -2.31.1 - diff --git a/pkgs/applications/emulators/retroarch/fix-config.patch b/pkgs/applications/emulators/retroarch/fix-config.patch deleted file mode 100644 index 1a71bf43cb11f..0000000000000 --- a/pkgs/applications/emulators/retroarch/fix-config.patch +++ /dev/null @@ -1,26 +0,0 @@ -diff --git a/retroarch.cfg b/retroarch.cfg -index cdcb199c9f..08b9b1cf10 100644 ---- a/retroarch.cfg -+++ b/retroarch.cfg -@@ -681,7 +681,7 @@ - # menu_show_online_updater = true - - # If disabled, will hide the ability to update cores (and core info files) inside the menu. --# menu_show_core_updater = true -+menu_show_core_updater = false - - # If disabled, the libretro core will keep running in the background when we - # are in the menu. -@@ -823,10 +823,10 @@ - # rgui_browser_directory = - - # Core directory for libretro core implementations. --# libretro_directory = -+libretro_directory = @libretro_directory@ - - # Core info directory for libretro core information. --# libretro_info_path = -+libretro_info_path = @libretro_info_path@ - - # Path to content database directory. - # content_database_path = diff --git a/pkgs/applications/emulators/retroarch/fix-libretro-paths.patch b/pkgs/applications/emulators/retroarch/fix-libretro-paths.patch deleted file mode 100644 index 203ce836533d5..0000000000000 --- a/pkgs/applications/emulators/retroarch/fix-libretro-paths.patch +++ /dev/null @@ -1,28 +0,0 @@ -diff --git a/configuration.c b/configuration.c -index e6a3841324..afb1d6e2ce 100644 ---- a/configuration.c -+++ b/configuration.c -@@ -1456,7 +1456,7 @@ static struct config_path_setting *populate_settings_path( - SETTING_PATH("core_options_path", - settings->paths.path_core_options, false, NULL, true); - SETTING_PATH("libretro_info_path", -- settings->paths.path_libretro_info, false, NULL, true); -+ settings->paths.path_libretro_info, false, NULL, false); - SETTING_PATH("content_database_path", - settings->paths.path_content_database, false, NULL, true); - SETTING_PATH("cheat_database_path", -diff --git a/frontend/drivers/platform_unix.c b/frontend/drivers/platform_unix.c -index 722e1c595c..e7313ee038 100644 ---- a/frontend/drivers/platform_unix.c -+++ b/frontend/drivers/platform_unix.c -@@ -1825,8 +1825,8 @@ static void frontend_unix_get_env(int *argc, - fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], base_path, - "core_info", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO])); - #else -- fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], base_path, -- "cores", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO])); -+ fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], "@libretro_info_path@", -+ "", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO])); - #endif - fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_AUTOCONFIG], base_path, - "autoconfig", sizeof(g_defaults.dirs[DEFAULT_DIR_AUTOCONFIG])); diff --git a/pkgs/applications/emulators/retroarch/hashes.json b/pkgs/applications/emulators/retroarch/hashes.json index fac926c9062bd..af63572e61c07 100644 --- a/pkgs/applications/emulators/retroarch/hashes.json +++ b/pkgs/applications/emulators/retroarch/hashes.json @@ -153,8 +153,8 @@ "fbneo": { "owner": "libretro", "repo": "fbneo", - "rev": "8678b0fcd02c4049c0cfa40a0ab87fded1bbedd8", - "sha256": "MiLYaURj17Sq8V31SDFQ93XH4DAYMQQelVq+4EBmtro=" + "rev": "758f24740d81ff833c1868befd98ccd11909255f", + "sha256": "VhfsvohRWICWqKWry0fgUS76kiXBsnjY9DytxEvulKA=" }, "fceumm": { "owner": "libretro", @@ -219,8 +219,8 @@ "mame": { "owner": "libretro", "repo": "mame", - "rev": "fcacbc7811a9b69874fd09b91e7217e44c6a0980", - "sha256": "WiBmqBcqxXmeQOmTN4FDDUv680uqAkpYUOnvJ7FXn4k=" + "rev": "0d935696dce53a13eaf0705f4a108ee348f3c613", + "sha256": "HnJ3eHzTpR7Lsi1ATn3B314y0KNKJ0+qNGcDbFvmZEA=" }, "mame2000": { "owner": "libretro", @@ -237,8 +237,8 @@ "mame2003-plus": { "owner": "libretro", "repo": "mame2003-plus-libretro", - "rev": "982db57b325b54aa90a60bd2e512b624d3b6642c", - "sha256": "uyysUD/PULHyaOw42GJoBsT9fYdYuAl4eLCVNRU8/Sw=" + "rev": "d88d5c118e8d7075ec0a4e6deebb4cd3f18a8dd1", + "sha256": "9offucQMCpMqo4StYscS6kivXCYHy4Sn+Cs/3MoNwsw=" }, "mame2010": { "owner": "libretro", @@ -261,8 +261,8 @@ "melonds": { "owner": "libretro", "repo": "melonds", - "rev": "6a03f3f11a729dbf698ec53954c735a0680aca01", - "sha256": "GH/G/UzwjNqHwtIwx6VohP4XsJKe+EFU2n+GX43IByM=" + "rev": "5e52c245fb38cabe881fbfa6513280ee44fc5bd8", + "sha256": "jWBZ5wg1dKEgoEV09VTGJ+I4+8uiivAHhpTiD9tPaYg=" }, "mesen": { "owner": "libretro", @@ -285,8 +285,8 @@ "mgba": { "owner": "libretro", "repo": "mgba", - "rev": "db7ace387cdc87d9f2bd4f9f5211c26ce0b07867", - "sha256": "i/U5yrnGQBRHqBu8c/mQ7Eov43+6IOOs+H8pSKXNM1E=" + "rev": "199a03e719436018779fe9299706c597fb2e9231", + "sha256": "3Q3MBzezCvl1Er45AeUM/QI0a+JiGn/PfYpqMaaiuds=" }, "mupen64plus": { "owner": "libretro", @@ -346,28 +346,28 @@ "pcsx_rearmed": { "owner": "libretro", "repo": "pcsx_rearmed", - "rev": "5b406fd9567c0829171af44b3325dae6dd155732", - "sha256": "V+z58fRSaLurDiu4Y/xQjndkMKPSmEGjay3foDkppM0=" + "rev": "5ced3945423cda0010597b27b7da6bce77b12baa", + "sha256": "8O2XyEr40HqQf8mHxmvB6/UT837HZw8SrKBy/JH66p4=" }, "picodrive": { "owner": "libretro", "repo": "picodrive", - "rev": "26719f348eb579a8372e2c58ef0132d95d9dc817", - "sha256": "xD8RxFHeKOltIc35Zudj29x+vkq2AXfSKu0/ZzQQHi4=", + "rev": "0a4ec83cbfaebb65fb1c40f26ffaf28131f9003b", + "sha256": "NOMQoDmXGrxrquAcSLo6Otcz8bH4gnhqcG/zzet3Dtk=", "fetchSubmodules": true }, "play": { "owner": "jpd002", "repo": "Play-", - "rev": "1129440ab6ede8263275dc3a5eec1624d20442fb", - "sha256": "nTJjxVPGOofnIZbjGe3GZDIj4YnC73IbSdGsSuVIjEA=", + "rev": "1126c39cd8ebf56af347c475139d4db97fc7cc19", + "sha256": "H/cYFWl8rA/ZdoygEjr7h1y6Z0n29Z+OCzzVMvIuVyo=", "fetchSubmodules": true }, "ppsspp": { "owner": "hrydgard", "repo": "ppsspp", - "rev": "16f93a26844b26e11cf9becfd275c4a637bfd1ab", - "sha256": "k1URDPE4kRMY1LUeR2zcLJFGt0Gnt5N8gTQHpIxDdRw=", + "rev": "4af4b0dddc638b00205d9943f17a2806e438fe83", + "sha256": "5n+Mg2ZDTJd5fk1OZAiYnCT13G3LAWahXPA+MwaOF08=", "fetchSubmodules": true }, "prboom": { @@ -385,8 +385,8 @@ "puae": { "owner": "libretro", "repo": "libretro-uae", - "rev": "1b7dd443ff89d667d99f8c44454a91ed59bcabd9", - "sha256": "YJiZEtB0rBFffEZj/hB7zEFBUp02kCzblq4CtCmygKo=" + "rev": "4d8ebafe3f91c4998e8d73940e9558d863ecf93b", + "sha256": "dzfZFm7L+Qe3WwSYiMLp3cQm8zk0pWVB68nBe/H1Hvc=" }, "quicknes": { "owner": "libretro", @@ -439,8 +439,8 @@ "stella": { "owner": "stella-emu", "repo": "stella", - "rev": "65115cc3a133d68979f3096bdecb067bcaedb493", - "sha256": "letOnjaIGIjC9xwj5C156VkBhMPFtVq12FG7SuC5+OY=" + "rev": "7193c405327e0f2156d24d53836162f4b44af079", + "sha256": "A9icQON+0WrknjGp/0wiFNSWs2ot2s0X5lucCdk4O/s=" }, "stella2014": { "owner": "libretro", @@ -451,8 +451,8 @@ "swanstation": { "owner": "libretro", "repo": "swanstation", - "rev": "b6a18318bd7bf0d3b28b50d2b554810ea11b30cb", - "sha256": "jZ6SfiHFJyaTFvINrEe61yhUtWYoqRzaAi0vLuDnMuo=" + "rev": "ff0b451a573885a5b3a4f291f7b22f3ffc667a17", + "sha256": "jz8tkvgonc4icRt12tt1BBCCiwec0ucix7Hp7PNPl8E=" }, "tgbdual": { "owner": "libretro", @@ -476,8 +476,8 @@ "vba-m": { "owner": "libretro", "repo": "vbam-libretro", - "rev": "7c25d64d6903c6d859cce781c52da0671c4f7d3e", - "sha256": "U+jBM34sZxny9lpuegQ8YDKBwYrWOAyLBMKumoQCok4=" + "rev": "7e30b038893de63e674944f75581d57c7685ea3a", + "sha256": "CmmiKiy0mFqAiagUHFV5wRSZ0MkzADrHRAG+h82dWAQ=" }, "vba-next": { "owner": "libretro", diff --git a/pkgs/applications/emulators/retroarch/use-fixed-paths-on-libretro_info_path.patch b/pkgs/applications/emulators/retroarch/use-fixed-paths-on-libretro_info_path.patch deleted file mode 100644 index fd3913ea157ea..0000000000000 --- a/pkgs/applications/emulators/retroarch/use-fixed-paths-on-libretro_info_path.patch +++ /dev/null @@ -1,84 +0,0 @@ -From 7bf021529ff15ca2580b15b3c0bfdc137d5beffe Mon Sep 17 00:00:00 2001 -From: Thiago Kenji Okada <thiagokokada@gmail.com> -Date: Wed, 9 Mar 2022 18:24:15 +0000 -Subject: [PATCH] Use fixed paths on "libretro_info_path" - -This patch sets "libretro_info_path" to `handle = false`, so instead of -using the values from `retroarch.cfg`, it will always use the default. - -Also, it patches the default "libretro_info_path" to the -`@libretro_info_path` string, so we can substitute it with the full path -to it during build. ---- - configuration.c | 2 +- - frontend/drivers/platform_darwin.m | 9 ++------- - frontend/drivers/platform_unix.c | 12 ++++-------- - 3 files changed, 7 insertions(+), 16 deletions(-) - -diff --git a/configuration.c b/configuration.c -index 7e346ff6e9..c4b2100203 100644 ---- a/configuration.c -+++ b/configuration.c -@@ -1466,7 +1466,7 @@ static struct config_path_setting *populate_settings_path( - SETTING_PATH("core_options_path", - settings->paths.path_core_options, false, NULL, true); - SETTING_PATH("libretro_info_path", -- settings->paths.path_libretro_info, false, NULL, true); -+ settings->paths.path_libretro_info, false, NULL, false); - SETTING_PATH("content_database_path", - settings->paths.path_content_database, false, NULL, true); - SETTING_PATH("cheat_database_path", -diff --git a/frontend/drivers/platform_darwin.m b/frontend/drivers/platform_darwin.m -index 6c5fdca400..552dcb7e2b 100644 ---- a/frontend/drivers/platform_darwin.m -+++ b/frontend/drivers/platform_darwin.m -@@ -388,14 +388,9 @@ static void frontend_darwin_get_env(int *argc, char *argv[], - home_dir_buf, "shaders_glsl", - sizeof(g_defaults.dirs[DEFAULT_DIR_SHADER])); - #endif --#ifdef HAVE_UPDATE_CORES - fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE], -- home_dir_buf, "cores", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE])); --#else -- fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE], -- bundle_path_buf, "modules", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE])); --#endif -- fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], home_dir_buf, "info", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO])); -+ "@libretro_directory@", "", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE])); -+ fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], "@libretro_info_path@", "", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO])); - fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_OVERLAY], home_dir_buf, "overlays", sizeof(g_defaults.dirs[DEFAULT_DIR_OVERLAY])); - #ifdef HAVE_VIDEO_LAYOUT - fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_VIDEO_LAYOUT], home_dir_buf, "layouts", sizeof(g_defaults.dirs[DEFAULT_DIR_VIDEO_LAYOUT])); -diff --git a/frontend/drivers/platform_unix.c b/frontend/drivers/platform_unix.c -index b3b5dad173..7f1561e523 100644 ---- a/frontend/drivers/platform_unix.c -+++ b/frontend/drivers/platform_unix.c -@@ -1820,12 +1820,8 @@ static void frontend_unix_get_env(int *argc, - strcpy_literal(base_path, "retroarch"); - #endif - -- if (!string_is_empty(libretro_directory)) -- strlcpy(g_defaults.dirs[DEFAULT_DIR_CORE], libretro_directory, -- sizeof(g_defaults.dirs[DEFAULT_DIR_CORE])); -- else -- fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE], base_path, -- "cores", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE])); -+ fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE], "@libretro_directory@", -+ "", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE])); - #if defined(DINGUX) - /* On platforms that require manual core installation/ - * removal, placing core info files in the same directory -@@ -1834,8 +1830,8 @@ static void frontend_unix_get_env(int *argc, - fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], base_path, - "core_info", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO])); - #else -- fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], base_path, -- "cores", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO])); -+ fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], "@libretro_info_path@", -+ "", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO])); - #endif - fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_AUTOCONFIG], base_path, - "autoconfig", sizeof(g_defaults.dirs[DEFAULT_DIR_AUTOCONFIG])); --- -2.32.0 - diff --git a/pkgs/applications/emulators/retroarch/use-fixed-paths.patch b/pkgs/applications/emulators/retroarch/use-fixed-paths.patch new file mode 100644 index 0000000000000..a4837e63af7f7 --- /dev/null +++ b/pkgs/applications/emulators/retroarch/use-fixed-paths.patch @@ -0,0 +1,154 @@ +From 8a1cffebb23f9d2a28228cd8cbf4fd80836157e8 Mon Sep 17 00:00:00 2001 +From: Thiago Kenji Okada <thiagokokada@gmail.com> +Date: Tue, 18 Oct 2022 17:41:33 +0100 +Subject: [PATCH] Use fixed paths + +--- + configuration.c | 2 +- + frontend/drivers/platform_darwin.m | 4 +-- + frontend/drivers/platform_unix.c | 56 +++++++++++++++--------------- + 3 files changed, 31 insertions(+), 31 deletions(-) + +diff --git a/configuration.c b/configuration.c +index ac4779b2d7..d980892dda 100644 +--- a/configuration.c ++++ b/configuration.c +@@ -1468,7 +1468,7 @@ static struct config_path_setting *populate_settings_path( + SETTING_PATH("core_options_path", + settings->paths.path_core_options, false, NULL, true); + SETTING_PATH("libretro_info_path", +- settings->paths.path_libretro_info, false, NULL, true); ++ settings->paths.path_libretro_info, false, NULL, false); + SETTING_PATH("content_database_path", + settings->paths.path_content_database, false, NULL, true); + SETTING_PATH("cheat_database_path", +diff --git a/frontend/drivers/platform_darwin.m b/frontend/drivers/platform_darwin.m +index c771ec0f55..d5e21a1f4d 100644 +--- a/frontend/drivers/platform_darwin.m ++++ b/frontend/drivers/platform_darwin.m +@@ -400,9 +400,9 @@ static void frontend_darwin_get_env(int *argc, char *argv[], + home_dir_buf, "cores", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE])); + #else + fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE], +- bundle_path_buf, "modules", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE])); ++ "@libretro_directory@", "", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE])); + #endif +- fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], home_dir_buf, "info", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO])); ++ fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], "@libretro_info_path@", "", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO])); + fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_OVERLAY], home_dir_buf, "overlays", sizeof(g_defaults.dirs[DEFAULT_DIR_OVERLAY])); + #ifdef HAVE_VIDEO_LAYOUT + fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_VIDEO_LAYOUT], home_dir_buf, "layouts", sizeof(g_defaults.dirs[DEFAULT_DIR_VIDEO_LAYOUT])); +diff --git a/frontend/drivers/platform_unix.c b/frontend/drivers/platform_unix.c +index 29e9a0d633..dba8abe941 100644 +--- a/frontend/drivers/platform_unix.c ++++ b/frontend/drivers/platform_unix.c +@@ -1792,8 +1792,8 @@ static void frontend_unix_get_env(int *argc, + strlcpy(g_defaults.dirs[DEFAULT_DIR_CORE], libretro_directory, + sizeof(g_defaults.dirs[DEFAULT_DIR_CORE])); + else +- fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE], base_path, +- "cores", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE])); ++ fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE], "@libretro_directory@", ++ "", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE])); + #if defined(DINGUX) + /* On platforms that require manual core installation/ + * removal, placing core info files in the same directory +@@ -1802,27 +1802,27 @@ static void frontend_unix_get_env(int *argc, + fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], base_path, + "core_info", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO])); + #else +- fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], base_path, +- "cores", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO])); ++ fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_CORE_INFO], "@libretro_info_path@", ++ "", sizeof(g_defaults.dirs[DEFAULT_DIR_CORE_INFO])); + #endif + fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_AUTOCONFIG], base_path, + "autoconfig", sizeof(g_defaults.dirs[DEFAULT_DIR_AUTOCONFIG])); + +- if (path_is_directory("/usr/local/share/retroarch/assets")) ++ if (path_is_directory("@out@/local/share/retroarch/assets")) + fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_ASSETS], +- "/usr/local/share/retroarch", ++ "@out@/local/share/retroarch", + "assets", sizeof(g_defaults.dirs[DEFAULT_DIR_ASSETS])); +- else if (path_is_directory("/usr/share/retroarch/assets")) ++ else if (path_is_directory("@out@/share/retroarch/assets")) + fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_ASSETS], +- "/usr/share/retroarch", ++ "@out@/share/retroarch", + "assets", sizeof(g_defaults.dirs[DEFAULT_DIR_ASSETS])); +- else if (path_is_directory("/usr/local/share/games/retroarch/assets")) ++ else if (path_is_directory("@out@/local/share/games/retroarch/assets")) + fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_ASSETS], +- "/usr/local/share/games/retroarch", ++ "@out@/local/share/games/retroarch", + "assets", sizeof(g_defaults.dirs[DEFAULT_DIR_ASSETS])); +- else if (path_is_directory("/usr/share/games/retroarch/assets")) ++ else if (path_is_directory("@out@/share/games/retroarch/assets")) + fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_ASSETS], +- "/usr/share/games/retroarch", ++ "@out@/share/games/retroarch", + "assets", sizeof(g_defaults.dirs[DEFAULT_DIR_ASSETS])); + else + fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_ASSETS], base_path, +@@ -1834,41 +1834,41 @@ static void frontend_unix_get_env(int *argc, + fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER], base_path, + "filters/video", sizeof(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER])); + #else +- if (path_is_directory("/usr/local/share/retroarch/filters/audio")) ++ if (path_is_directory("@out@/local/share/retroarch/filters/audio")) + fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER], +- "/usr/local/share/retroarch", ++ "@out@/local/share/retroarch", + "filters/audio", sizeof(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER])); +- else if (path_is_directory("/usr/share/retroarch/filters/audio")) ++ else if (path_is_directory("@out@/share/retroarch/filters/audio")) + fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER], +- "/usr/share/retroarch", ++ "@out@/share/retroarch", + "filters/audio", sizeof(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER])); +- else if (path_is_directory("/usr/local/share/games/retroarch/filters/audio")) ++ else if (path_is_directory("@out@/local/share/games/retroarch/filters/audio")) + fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER], +- "/usr/local/share/games/retroarch", ++ "@out@/local/share/games/retroarch", + "filters/audio", sizeof(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER])); +- else if (path_is_directory("/usr/share/games/retroarch/filters/audio")) ++ else if (path_is_directory("@out@/share/games/retroarch/filters/audio")) + fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER], +- "/usr/share/games/retroarch", ++ "@out@/share/games/retroarch", + "filters/audio", sizeof(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER])); + else + fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER], base_path, + "filters/audio", sizeof(g_defaults.dirs[DEFAULT_DIR_AUDIO_FILTER])); + +- if (path_is_directory("/usr/local/share/retroarch/filters/video")) ++ if (path_is_directory("@out@/local/share/retroarch/filters/video")) + fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER], +- "/usr/local/share/retroarch", ++ "@out@/local/share/retroarch", + "filters/video", sizeof(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER])); +- else if (path_is_directory("/usr/share/retroarch/filters/video")) ++ else if (path_is_directory("@out@/share/retroarch/filters/video")) + fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER], +- "/usr/share/retroarch", ++ "@out@/share/retroarch", + "filters/video", sizeof(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER])); +- else if (path_is_directory("/usr/local/share/games/retroarch/filters/video")) ++ else if (path_is_directory("@out@/local/share/games/retroarch/filters/video")) + fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER], +- "/usr/local/share/games/retroarch", ++ "@out@/local/share/games/retroarch", + "filters/video", sizeof(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER])); +- else if (path_is_directory("/usr/share/games/retroarch/filters/video")) ++ else if (path_is_directory("@out@/share/games/retroarch/filters/video")) + fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER], +- "/usr/share/games/retroarch", ++ "@out@/share/games/retroarch", + "filters/video", sizeof(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER])); + else + fill_pathname_join(g_defaults.dirs[DEFAULT_DIR_VIDEO_FILTER], base_path, +-- +2.37.3 + |