heroic: fix infinite loop when starting some games

K900 c240d63c e9a9a606

+26
+3
pkgs/games/heroic/default.nix
··· 45 ./remove-drm-support.patch 46 # Make Heroic create Steam shortcuts (to non-steam games) with the correct path to heroic. 47 ./fix-non-steam-shortcuts.patch 48 ]; 49 50 postPatch = ''
··· 45 ./remove-drm-support.patch 46 # Make Heroic create Steam shortcuts (to non-steam games) with the correct path to heroic. 47 ./fix-non-steam-shortcuts.patch 48 + # Fix reg add infinite loop 49 + # Submitted upstream: https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher/pull/3210 50 + ./fix-infinite-loop.patch 51 ]; 52 53 postPatch = ''
+23
pkgs/games/heroic/fix-infinite-loop.patch
···
··· 1 + From b698779053b7ba31bd8e69b230e86515e3019bf6 Mon Sep 17 00:00:00 2001 2 + From: K900 <me@0upti.me> 3 + Date: Sun, 5 Nov 2023 22:04:32 +0300 4 + Subject: [PATCH] Force add the registry entry 5 + 6 + Otherwise, newer Wine versions will prompt to overwrite it and loop there forever. 7 + --- 8 + src/backend/storeManagers/legendary/setup.ts | 2 +- 9 + 1 file changed, 1 insertion(+), 1 deletion(-) 10 + 11 + diff --git a/src/backend/storeManagers/legendary/setup.ts b/src/backend/storeManagers/legendary/setup.ts 12 + index 1837106621..b5c2432435 100644 13 + --- a/src/backend/storeManagers/legendary/setup.ts 14 + +++ b/src/backend/storeManagers/legendary/setup.ts 15 + @@ -20,7 +20,7 @@ export const legendarySetup = async (appName: string) => { 16 + 17 + // Fixes games like Fallout New Vegas and Dishonored: Death of the Outsider 18 + await runWineCommandOnGame(appName, { 19 + - commandParts: ['reg', 'add', 'HKEY_CLASSES_ROOT\\com.epicgames.launcher'], 20 + + commandParts: ['reg', 'add', 'HKEY_CLASSES_ROOT\\com.epicgames.launcher', '/f'], 21 + wait: true, 22 + protonVerb: 'waitforexitandrun' 23 + })