gnu: retroarch: Disable the on-line updater.

Addresses <http://issues.guix.gnu.org/issue/38360>.

* gnu/packages/emulators.scm (retroarch)[source]: Add patch and snippet.
* packages/patches/retroarch-disable-online-updater.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
This commit is contained in:
Tobias Geerinckx-Rice 2019-11-29 18:57:45 +01:00
parent ba3ff730ca
commit 775497549c
No known key found for this signature in database
GPG Key ID: D889B0F018C5493C
3 changed files with 57 additions and 2 deletions

View File

@ -1329,6 +1329,7 @@ dist_patch_DATA = \
%D%/packages/patches/rpcbind-CVE-2017-8779.patch \ %D%/packages/patches/rpcbind-CVE-2017-8779.patch \
%D%/packages/patches/rtags-separate-rct.patch \ %D%/packages/patches/rtags-separate-rct.patch \
%D%/packages/patches/racket-store-checksum-override.patch \ %D%/packages/patches/racket-store-checksum-override.patch \
%D%/packages/patches/retroarch-disable-online-updater.patch \
%D%/packages/patches/ruby-rubygems-276-for-ruby24.patch \ %D%/packages/patches/ruby-rubygems-276-for-ruby24.patch \
%D%/packages/patches/ruby-rack-ignore-failing-test.patch \ %D%/packages/patches/ruby-rack-ignore-failing-test.patch \
%D%/packages/patches/ruby-safe-yaml-add-require-time.patch \ %D%/packages/patches/ruby-safe-yaml-add-require-time.patch \

View File

@ -1062,7 +1062,18 @@ emulation community. It provides highly accurate emulation.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0y7rcpz7psf8k3agsrq277jdm651vbnn9xpqvmj2in1a786idya7")))) (base32 "0y7rcpz7psf8k3agsrq277jdm651vbnn9xpqvmj2in1a786idya7"))
(patches
(search-patches "retroarch-disable-online-updater.patch"))
(modules '((guix build utils)))
(snippet
'(begin
;; Don't suggest using the Online Updater if available: it never
;; is. This disables translation of this particular message.
(substitute* (find-files "menu/drivers" "\\.c$")
(("msg_hash_to_str\\(MSG_MISSING_ASSETS\\)")
"\"Warning: Missing assets, go get some\""))
#t))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:tests? #f ; no tests `(#:tests? #f ; no tests
@ -1074,7 +1085,7 @@ emulation community. It provides highly accurate emulation.")
(etc (string-append out "/etc")) (etc (string-append out "/etc"))
(vulkan (assoc-ref inputs "vulkan-loader")) (vulkan (assoc-ref inputs "vulkan-loader"))
(wayland-protocols (assoc-ref inputs "wayland-protocols"))) (wayland-protocols (assoc-ref inputs "wayland-protocols")))
;; Hard-code the path to libvulkan.so. ;; Hard-code some store file names.
(substitute* "gfx/common/vulkan_common.c" (substitute* "gfx/common/vulkan_common.c"
(("libvulkan.so") (string-append vulkan "/lib/libvulkan.so"))) (("libvulkan.so") (string-append vulkan "/lib/libvulkan.so")))
(substitute* "gfx/common/wayland/generate_wayland_protos.sh" (substitute* "gfx/common/wayland/generate_wayland_protos.sh"
@ -1082,10 +1093,12 @@ emulation community. It provides highly accurate emulation.")
(string-append wayland-protocols "/share/wayland-protocols"))) (string-append wayland-protocols "/share/wayland-protocols")))
(substitute* "qb/qb.libs.sh" (substitute* "qb/qb.libs.sh"
(("/bin/true") (which "true"))) (("/bin/true") (which "true")))
;; Use shared zlib. ;; Use shared zlib.
(substitute* '("libretro-common/file/archive_file_zlib.c" (substitute* '("libretro-common/file/archive_file_zlib.c"
"libretro-common/streams/trans_stream_zlib.c") "libretro-common/streams/trans_stream_zlib.c")
(("<compat/zlib.h>") "<zlib.h>")) (("<compat/zlib.h>") "<zlib.h>"))
;; The configure script does not yet accept the extra arguments ;; The configure script does not yet accept the extra arguments
;; (like CONFIG_SHELL=) passed by the default configure phase. ;; (like CONFIG_SHELL=) passed by the default configure phase.
(invoke (invoke

View File

@ -0,0 +1,41 @@
From: Tobias Geerinckx-Rice <me@tobias.gr>
Date: Fri, 29 Nov 2019 20:32:54 +0100
Subject: [PATCH]: gnu: retroarch: Disable the on-line updater.
This disables the entire Online Updater sub-menu to address
<http://issues.guix.gnu.org/issue/38360>. Perhaps that is more than is
necessary.
diff -Naur a/menu/menu_displaylist.c b/menu/menu_displaylist.c
--- a/menu/menu_displaylist.c 1970-01-01 01:00:01.000000000 +0100
+++ b/menu/menu_displaylist.c 2019-11-29 18:35:27.467948854 +0100
@@ -8444,11 +8444,6 @@
MENU_ENUM_LABEL_NETPLAY,
PARSE_ACTION, false) == 0)
count++;
- if (settings->bools.menu_show_online_updater)
- if (menu_displaylist_parse_settings_enum(info->list,
- MENU_ENUM_LABEL_ONLINE_UPDATER,
- PARSE_ACTION, false) == 0)
- count++;
if (menu_displaylist_parse_settings_enum(info->list,
MENU_ENUM_LABEL_SETTINGS, PARSE_ACTION, false) == 0)
count++;
diff -Naur retroarch.a/menu/menu_setting.c retroarch.c/menu/menu_setting.c
--- a/menu/menu_setting.c 1970-01-01 01:00:01.000000000 +0100
+++ b/menu/menu_setting.c 2019-11-29 18:35:35.753957312 +0100
@@ -7291,14 +7291,6 @@
&group_info,
&subgroup_info,
parent_group);
-
- CONFIG_ACTION(
- list, list_info,
- MENU_ENUM_LABEL_ONLINE_UPDATER,
- MENU_ENUM_LABEL_VALUE_ONLINE_UPDATER,
- &group_info,
- &subgroup_info,
- parent_group);
#endif
CONFIG_ACTION(