Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feat - General] Sideload Apps #1864

Merged
merged 100 commits into from
Oct 25, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
100 commits
Select commit Hold shift + click to select a range
afcc33c
feat: update Game types
flavioislima Sep 6, 2022
37fc7fb
feat: add SideloadGame class
flavioislima Sep 7, 2022
2104b70
feat: more methods on BE
flavioislima Sep 15, 2022
a97e730
feat: added fixed game card to library
flavioislima Sep 17, 2022
4b35fb0
Merge branch 'beta' of github.com:Heroic-Games-Launcher/HeroicGamesLa…
flavioislima Sep 17, 2022
241e38e
fix: tests
flavioislima Sep 17, 2022
965ddd3
Merge branch 'beta' of github.com:Heroic-Games-Launcher/HeroicGamesLa…
flavioislima Sep 20, 2022
cc3099a
chore: moved to functional approach
flavioislima Sep 20, 2022
6d97aae
i18n: updated keys
flavioislima Sep 20, 2022
5b9299e
chore: split methods from object
flavioislima Sep 20, 2022
e057e24
feat: refactor Install modal
flavioislima Sep 21, 2022
d28f01a
feat: refactor wine selector
flavioislima Sep 23, 2022
c5be6fb
WIP: sideload form
flavioislima Sep 23, 2022
596765c
i18n: updated keys
flavioislima Sep 25, 2022
db6456d
feat: launch sideloaded win games
flavioislima Sep 25, 2022
ed403f1
feat: show loading message for save sync
flavioislima Sep 25, 2022
2f9cc1b
feat: show gogdl version on sysinfo
flavioislima Sep 25, 2022
efeba7c
feat: add short-uuid package
flavioislima Sep 25, 2022
5e1d0b3
feat: adjust runWinecommand to be more generic
flavioislima Sep 25, 2022
efa8732
feat: install api and other stuff
flavioislima Sep 25, 2022
38c610c
i18n: updated keys
flavioislima Sep 25, 2022
c4e2558
feat: allow run setup first
flavioislima Sep 29, 2022
70750bd
feat: adjust gamepage and submenu
flavioislima Sep 29, 2022
c6b413b
feat: move library to global state
flavioislima Sep 29, 2022
80f0006
feat: show sideloaded on search autocomplete
flavioislima Sep 29, 2022
ad082e4
i18n: updated keys
flavioislima Sep 29, 2022
e492126
fix: exe with spaces
flavioislima Sep 29, 2022
2f9e793
feat: stop command
flavioislima Sep 29, 2022
e6caba9
feat: add image to form
flavioislima Sep 29, 2022
cef2c0a
fix: library refresh
flavioislima Sep 29, 2022
e914e31
fix: eos overlay
flavioislima Sep 29, 2022
2666300
i18n: updated keys
flavioislima Sep 29, 2022
7f36616
fixed undefined sideloadedLibrary value on refresh
BrettCleary Oct 4, 2022
f43d35b
add game button instead of empty game card
BrettCleary Oct 6, 2022
5738ace
Merge branch 'beta' of github.com:Heroic-Games-Launcher/HeroicGamesLa…
flavioislima Oct 6, 2022
1a17a35
fix: styling
flavioislima Oct 6, 2022
463b3d2
feat: add support for native binaries
flavioislima Oct 6, 2022
88e1b80
feat: add edit button to Tools
flavioislima Oct 6, 2022
9e520c6
feat: edit rules and file extensions
flavioislima Oct 6, 2022
bec188c
fix: edit duplicating app
flavioislima Oct 6, 2022
8182105
i18n: updated keys
flavioislima Oct 6, 2022
6ae663a
chore: version
flavioislima Oct 6, 2022
5596613
fix: app should show on favorites and recent games
flavioislima Oct 6, 2022
8b661ee
fix: missing options on launch
flavioislima Oct 6, 2022
38f318a
fix: add to steam
flavioislima Oct 7, 2022
7626d5d
feat: shortcuts
flavioislima Oct 7, 2022
e311c6f
fix: styling
flavioislima Oct 7, 2022
b0ba36b
chore: move close button from dialog header to dialog
flavioislima Oct 7, 2022
18f09fe
feat: install modal improvements
flavioislima Oct 7, 2022
ba08c7a
feat: faster download dialog
flavioislima Oct 7, 2022
dedf3e0
i18n: update keys
flavioislima Oct 7, 2022
43e3814
feat: add filter to header
flavioislima Oct 10, 2022
949373b
fix: types and ui
flavioislima Oct 10, 2022
8e51634
i18n: updated keys
flavioislima Oct 11, 2022
0019b96
Merge branch 'beta' of github.com:Heroic-Games-Launcher/HeroicGamesLa…
flavioislima Oct 11, 2022
4b3ae72
fix: merge fixes
flavioislima Oct 11, 2022
07ff962
i18n: removed unused keys
flavioislima Oct 11, 2022
9ee718d
fix: quote issues
flavioislima Oct 12, 2022
0846692
fix: add game style
flavioislima Oct 12, 2022
aae964d
fix: sideloaded on other categories
flavioislima Oct 13, 2022
75cb192
fix: use callRunner for native apps
flavioislima Oct 13, 2022
1539202
feat: refactor runWineCommand to use spawn and accept wrappers
flavioislima Oct 13, 2022
7acea35
fix: callTools
flavioislima Oct 13, 2022
acd20e2
feat: attach output to log file
flavioislima Oct 13, 2022
2c6ce81
fix: set command start folder to fix dxvk logs location
flavioislima Oct 13, 2022
44bbdcd
fix: show wine confiig on native games
flavioislima Oct 14, 2022
a8b7cfc
chore: hide alternative exe setting
flavioislima Oct 14, 2022
498953b
fix: missing return
flavioislima Oct 14, 2022
1be87a2
fix: PR comments
flavioislima Oct 14, 2022
9953281
Merge branch 'beta' of github.com:Heroic-Games-Launcher/HeroicGamesLa…
flavioislima Oct 14, 2022
d0f5e82
fix: use getInfo to avoid repetition
flavioislima Oct 14, 2022
bac324e
game page bug fix for windows, added logging for game page errors
BrettCleary Oct 14, 2022
3dc2dd1
disabling react no unknown property eslint check
BrettCleary Oct 14, 2022
fab9480
fix: eslint rules + check for OS on gamepage
flavioislima Oct 18, 2022
feeb0c4
Merge branch 'beta' of github.com:Heroic-Games-Launcher/HeroicGamesLa…
flavioislima Oct 18, 2022
47110c7
fix: import
flavioislima Oct 18, 2022
e102cbc
Merge branch 'beta' of github.com:Heroic-Games-Launcher/HeroicGamesLa…
flavioislima Oct 18, 2022
6dee366
fix: repolace fallback image
flavioislima Oct 18, 2022
a9d0acd
feat: add isNative api helper
flavioislima Oct 18, 2022
beb461b
fix: broken native check on sidebar
flavioislima Oct 18, 2022
31a017d
chore: remove platform and settings while editing
flavioislima Oct 18, 2022
81aa0b5
moved some ipcMain handlers into sideload module
BrettCleary Oct 20, 2022
5baf3f3
Merge branch 'beta' of github.com:Heroic-Games-Launcher/HeroicGamesLa…
flavioislima Oct 20, 2022
bdd8c48
Merge branch 'feat/sideload_apps' of github.com:Heroic-Games-Launcher…
flavioislima Oct 20, 2022
4fb8678
fix: tests
flavioislima Oct 20, 2022
b0c6abf
fiix: system requirements link
flavioislima Oct 21, 2022
ade2e20
fix: header title
flavioislima Oct 21, 2022
19cf625
fix: revert platform renaming
flavioislima Oct 21, 2022
a9fa9a9
Merge branch 'beta' of github.com:Heroic-Games-Launcher/HeroicGamesLa…
flavioislima Oct 21, 2022
335da75
fix: post merge
flavioislima Oct 21, 2022
000d498
fix: progress not being shown + lint
flavioislima Oct 21, 2022
07d089c
fix: sideload modal margins
flavioislima Oct 21, 2022
f1bdb4a
fix: write and read settings
flavioislima Oct 21, 2022
12e9f39
fix: user should be able to access library when logged out
flavioislima Oct 24, 2022
ca0d4a2
feat: header adjustments
flavioislima Oct 24, 2022
6a17029
feat: limit title length and remove special chars
flavioislima Oct 24, 2022
80c74ab
fix: disable run installer if no title
flavioislima Oct 24, 2022
bfb4530
fix: gamelist info
flavioislima Oct 24, 2022
6bcfcb0
chore: set wineprefix as start dir when looking for exe
flavioislima Oct 24, 2022
50a4f7a
fix: pr comments
flavioislima Oct 24, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
4 changes: 4 additions & 0 deletions .eslintrc
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,10 @@
"@typescript-eslint/no-unused-vars": "error",
"no-return-await": "off",
"@typescript-eslint/return-await": "warn",
"react/no-unknown-property": [
"error",
{ "ignore": ["partition", "allowpopups", "useragent"] }
],
"@typescript-eslint/promise-function-async": [
"error",
{
Expand Down
2 changes: 1 addition & 1 deletion .husky/pre-push
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
#!/bin/bash
yarn codecheck && yarn lint && yarn prettier-fix && yarn i18n
yarn codecheck && yarn lint && yarn prettier-fix && yarn test && yarn i18n
5 changes: 3 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "heroic",
"version": "2.4.3",
"version": "2.5.0-beta.1",
"private": true,
"main": "build/electron/main.js",
"homepage": "./",
Expand Down Expand Up @@ -158,14 +158,15 @@
"react-i18next": "^11.16.7",
"react-router-dom": "^6.3.0",
"shlex": "^2.1.2",
"short-uuid": "^4.2.0",
"simple-keyboard": "^3.4.136",
"source-map-support": "^0.5.21",
"steam-shortcut-editor": "^3.1.1",
"systeminformation": "^5.12.3",
"tslib": "^2.4.0"
},
"scripts": {
"dev": "vite",
"start": "vite",
"codecheck": "tsc --noEmit",
"test": "jest --noStackTrace",
"test-watch": "jest --watch --maxWorkers=25%",
Expand Down
33 changes: 33 additions & 0 deletions public/locales/az/gamepage.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,15 @@
"message": "Bu oyunu təmir etməyə cəhd etmək istəyirsiniz? Bu uzun müddət çəkə bilər.",
"title": "Doğrulayın və Təmir edin"
},
"runexe": {
"title": "Select EXE to Run"
},
"select": {
"button": "Select"
},
"sideload": {
"exe": "Select Executable"
},
"stopInstall": {
"keepInstalling": "Quraşdırmağa davam edin",
"message": "Endirilmiş faylları SAXLAMAQ istəyirsiniz?",
Expand All @@ -39,11 +48,19 @@
"add_to_favourites": "Sevimlilərə əlavə edin",
"cancel": "Pauza/Ləğv et",
"continue": "Yükləməyə davam edin",
"finish": "Finish",
"force_update": "Mövcuddursa Yeniləməni məcbur edin",
"force-innstall": "Force Install",
"hide_game": "Oyunu Gizlət",
"import": "İdxal Oyunu",
"install": "Yüklemek",
"no-path-selected": "No path selected",
"remove_from_favourites": "Sevimlilərdən Sil",
"run-exe-first": "Run Installer First",
"running-setup": "Running Setup",
"sideload": {
"edit": "Edit App/Game"
},
"unhide_game": "Oyunu Gizlət",
"uninstall": "Silin",
"update": "Yeniləyin"
Expand All @@ -57,6 +74,8 @@
"game": {
"downloadSize": "Yükləmə ölçüsü",
"firstPlayed": "İlk Oynadı",
"getting-download-size": "Geting download size",
"getting-install-size": "Geting install size",
"installSize": "Quraşdırma Ölçüsü",
"language": "Dil",
"lastPlayed": "Son Oynama",
Expand Down Expand Up @@ -105,6 +124,20 @@
"sdl": {
"title": "Quraşdırılacaq komponentləri seçin"
},
"sideload": {
"field": {
"title": "Title"
},
"info": {
"exe": "Select Executable",
"image": "App Image",
"title": "Game/App Title"
},
"placeholder": {
"image": "Paste an Image URL here",
"title": "Add a title to your Game/App"
}
},
"specs": {
"minimum": "Minimum",
"recommended": "Tövsiyə"
Expand Down
8 changes: 5 additions & 3 deletions public/locales/az/translation.json
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@
},
"generic": {
"message": "",
"title": ""
"title": "Select EXE to Run"
},
"launchAborted": "Launch aborted",
"title": "Xəta",
Expand Down Expand Up @@ -224,7 +224,6 @@
},
"preferSystemLibs": "Fərdi Şərab versiyaları (Wine-GE, Wine-Lutris) kitabxana asılılıqları ilə göndərilir. Bu seçimi aktiv etməklə, bu göndərilmiş kitabxanalar nəzərə alınmayacaq və Wine əvəzinə sistem kitabxanalarını yükləyəcək. Xəbərdarlıq! Asılılıqlar təmin edilmədikdə problemlər yarana bilər.",
"primerun": "Multi-GPU sistemlərində oyunu göstərmək üçün xüsusi qrafik kartdan istifadə edin. Yalnız göstərmə üçün başsız GPU istifadə edən oyun noutbukları və ya stolüstü kompüterlərdə lazımdır (NVIDIA Optimus, AMD CrossFire)",
"resizablebar": "NVIDIA-nın Ölçüləndirilə bilən Çubuğu CPU-nun bütün qrafik buferinə daxil olmasını təmin edərək kadr sürətini artırmağa kömək edir. Aktivləşdirilməsi Vulkan əsaslı oyunlar üçün performansı yaxşılaşdıra bilər.",
"steam_path": {
"info": "This path lets Heroic determine what version of Proton Steam uses, for adding non-Steam games to Steam."
},
Expand All @@ -248,6 +247,9 @@
"stable": "Stabil",
"version": "Qəhrəmanlıq versiyası"
},
"save-sync": {
"searching": "Trying to detect the correct save folder"
},
"settings": "Parametrlər avtomatik olaraq saxlanılır",
"version": "Şərab versiyası"
},
Expand Down Expand Up @@ -371,6 +373,7 @@
"legendary-version": "Əfsanəvi Versiya: ",
"weblate": "Heroic tərcüməsinə kömək edin."
},
"Other": "Other",
"placeholder": {
"alt-gogdl-bin": "Daxili GOGDL ikili proqramından istifadə...",
"alt-legendary-bin": "Daxili əfsanəvi ikili proqramdan istifadə...",
Expand Down Expand Up @@ -467,7 +470,6 @@
"prefered_language": "Üstünlük Verilən Dil (Dil Kodu)",
"preferSystemLibs": "Sistem kitabxanalarına üstünlük verin",
"primerun": "Xüsusi Qrafik Kartdan istifadə edin",
"resizableBar": "Ölçü dəyişdirilə bilən BAR-ı aktivləşdirin (yalnız NVIDIA RTX 30xx)",
"runexe": {
"message": "Faylları buraya sürükləyin və buraxın",
"title": "Prefiksdə EXE-ni işə salın"
Expand Down
33 changes: 33 additions & 0 deletions public/locales/be/gamepage.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,15 @@
"message": "Вы хочаце паспрабаваць направіць гэтую гульню? Гэта можа заняць шмат часу.",
"title": "Рамантаванне й Праверка"
},
"runexe": {
"title": "Select EXE to Run"
},
"select": {
"button": "Select"
},
"sideload": {
"exe": "Select Executable"
},
"stopInstall": {
"keepInstalling": "Працягвайце ўсталёўваць",
"message": "Вы хочаце ЗАХАВАЦЬ спампаваныя файлы?",
Expand All @@ -38,11 +47,19 @@
"add_to_favourites": "Дадаць у абранае",
"cancel": "Паўза/Адмена",
"continue": "Працягваць спампаванне",
"finish": "Finish",
"force_update": "Прымусісць да абнаўлення, калі яно даступна",
"force-innstall": "Force Install",
"hide_game": "Схаваць гульню",
"import": "Імпарт гульні",
"install": "Усталяваць",
"no-path-selected": "No path selected",
"remove_from_favourites": "Выдаліць з абранага",
"run-exe-first": "Run Installer First",
"running-setup": "Running Setup",
"sideload": {
"edit": "Edit App/Game"
},
"unhide_game": "Гульня Unhide",
"uninstall": "Выдаліць",
"update": "Абнаўленне"
Expand All @@ -56,6 +73,8 @@
"game": {
"downloadSize": "Памер спампоўкі",
"firstPlayed": "Упершыню сыграна",
"getting-download-size": "Geting download size",
"getting-install-size": "Geting install size",
"installSize": "Памер усталявання",
"language": "мова",
"lastPlayed": "Апошняя гульня",
Expand Down Expand Up @@ -104,6 +123,20 @@
"sdl": {
"title": "Выберыце кампаненты для ўстаноўкі"
},
"sideload": {
"field": {
"title": "Title"
},
"info": {
"exe": "Select Executable",
"image": "App Image",
"title": "Game/App Title"
},
"placeholder": {
"image": "Paste an Image URL here",
"title": "Add a title to your Game/App"
}
},
"specs": {
"minimum": "Мінімум",
"recommended": "Рэкамендуецца"
Expand Down
18 changes: 10 additions & 8 deletions public/locales/be/translation.json
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@
},
"generic": {
"message": "",
"title": ""
"title": "Select EXE to Run"
},
"launchAborted": "Launch aborted",
"title": "Error",
Expand Down Expand Up @@ -106,7 +106,7 @@
}
},
"runexe": {
"title": ""
"title": "Select EXE to Run"
},
"select": {
"button": "Select",
Expand All @@ -120,7 +120,7 @@
"sync": {
"button": "",
"error": "",
"title": ""
"title": "Select EXE to Run"
},
"vcruntime": {
"install": {
Expand Down Expand Up @@ -224,7 +224,6 @@
},
"preferSystemLibs": "Custom Wine versions (Wine-GE, Wine-Lutris) are shipped with their library dependencies. By enabling this option, these shipped libraries will be ignored and Wine will load system libraries instead. Warning! Issues may occur if dependencies are not met.",
"primerun": "Use dedicated graphics card to render game on multi-GPU systems. Only needed on gaming laptops or desktops that use a headless GPU for rendering (NVIDIA Optimus, AMD CrossFire)",
"resizablebar": "NVIDIA's Resizable Bar helps boost framerate by making the CPU access the entire graphics buffer. Enabling may improve performance for Vulkan-based games.",
"steam_path": {
"info": "This path lets Heroic determine what version of Proton Steam uses, for adding non-Steam games to Steam."
},
Expand All @@ -248,6 +247,9 @@
"stable": "Stable",
"version": "Heroic Version"
},
"save-sync": {
"searching": "Trying to detect the correct save folder"
},
"settings": "",
"version": "Wine Version"
},
Expand Down Expand Up @@ -354,7 +356,7 @@
},
"gameargs": {
"placeholder": "",
"title": ""
"title": "Select EXE to Run"
},
"quote-args-with-spaces": "Warning: Make sure to quote args with spaces! E.g.: \"path/with spaces/\"",
"wrapper": {
Expand All @@ -371,6 +373,7 @@
"legendary-version": "Legendary Version: ",
"weblate": "Help Improve this translation."
},
"Other": "Other",
"placeholder": {
"alt-gogdl-bin": "Using built-in GOGDL binary...",
"alt-legendary-bin": "Using built-in Legendary binary...",
Expand Down Expand Up @@ -457,7 +460,7 @@
"forceupload": "",
"sync": "",
"syncing": "",
"title": "",
"title": "Select EXE to Run",
"upload": ""
},
"maxRecentGames": "Recent Games to Show",
Expand All @@ -467,10 +470,9 @@
"prefered_language": "Prefered Language (Language Code)",
"preferSystemLibs": "Prefer system libraries",
"primerun": "Use Dedicated Graphics Card",
"resizableBar": "Enable Resizable BAR (NVIDIA RTX only)",
"runexe": {
"message": "",
"title": ""
"title": "Select EXE to Run"
},
"savefolder": {
"placeholder": ""
Expand Down
33 changes: 33 additions & 0 deletions public/locales/bg/gamepage.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,15 @@
"message": "Искате ли да се направи опит за поправка на тази игра? Това може да отнеме много време.",
"title": "Проверка и поправяне"
},
"runexe": {
"title": "Select EXE to Run"
},
"select": {
"button": "Select"
},
"sideload": {
"exe": "Select Executable"
},
"stopInstall": {
"keepInstalling": "Продължаване с инсталацията",
"message": "Искате ли да ЗАПАЗИТЕ свалените файлове?",
Expand All @@ -38,11 +47,19 @@
"add_to_favourites": "Добавяне към любимите",
"cancel": "Пауза/Отказ",
"continue": "Продължаване на свалянето",
"finish": "Finish",
"force_update": "Force Update if Available",
"force-innstall": "Force Install",
"hide_game": "Hide Game",
"import": "Внасяне на игра",
"install": "Инсталиране",
"no-path-selected": "No path selected",
"remove_from_favourites": "Премахване от любимите",
"run-exe-first": "Run Installer First",
"running-setup": "Running Setup",
"sideload": {
"edit": "Edit App/Game"
},
"unhide_game": "Показване на играта",
"uninstall": "Деинсталиране",
"update": "Обновяване"
Expand All @@ -56,6 +73,8 @@
"game": {
"downloadSize": "Размер за сваляне",
"firstPlayed": "Пусната за пръв път",
"getting-download-size": "Geting download size",
"getting-install-size": "Geting install size",
"installSize": "Размер на инсталацията",
"language": "Език",
"lastPlayed": "Последно пускане",
Expand Down Expand Up @@ -104,6 +123,20 @@
"sdl": {
"title": "Изберете компоненти за инсталиране"
},
"sideload": {
"field": {
"title": "Title"
},
"info": {
"exe": "Select Executable",
"image": "App Image",
"title": "Game/App Title"
},
"placeholder": {
"image": "Paste an Image URL here",
"title": "Add a title to your Game/App"
}
},
"specs": {
"minimum": "Минимални",
"recommended": "Препоръчителни"
Expand Down