Skip to content

Install legendary prerequisites #3364

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

Conversation

Etaash-mathamsetty
Copy link
Member

Installs the prerequisites that legendary gives in the json when installing a game, we can rip out the dedicated ubisoft stuff with this change.

Use the following Checklist if you have changed something on the Backend or Frontend:

  • Tested the feature and it's working on a current and clean install.
  • Tested the main App features and they are still working on a current and clean install. (Login, Install, Play, Uninstall, Move games, etc.)
  • Created / Updated Tests (If necessary)
  • Created / Updated documentation (If necessary)

@Etaash-mathamsetty
Copy link
Member Author

Etaash-mathamsetty commented Dec 30, 2023

the only issue is to move all the setup functions so that they only happen post install or on first run, otherwise the setup functions will constantly run each launch. The way they currently work makes it extremely easy to test, so I will leave it like this for now.

@Etaash-mathamsetty Etaash-mathamsetty changed the title Install legendary prerequisties Install legendary prerequisites Dec 30, 2023
Copy link
Collaborator

@arielj arielj left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good! I tested with a few games with and without prerequisites (including ubisoft) and all works fine

I just left some comments and one question

@arielj
Copy link
Collaborator

arielj commented Dec 30, 2023

Testing with RollerCoaster Tycoon 3 I get this error:
image

maybe we need to skip the args for the command when it's an empty string?

			"prerequisites": {
				"ids": [
					"DirectXJun2010Redist"
				],
				"name": "DirectX June 2010 Redistributable",
				"path": "directx_Jun2010_redist/DXSETUP.exe",
				"args": ""
			},

@Etaash-mathamsetty Etaash-mathamsetty added the pr:ready-for-review Feature-complete, ready for the grind! :P label Dec 30, 2023
@Etaash-mathamsetty
Copy link
Member Author

Testing with RollerCoaster Tycoon 3 I get this error: image

maybe we need to skip the args for the command when it's an empty string?

			"prerequisites": {
				"ids": [
					"DirectXJun2010Redist"
				],
				"name": "DirectX June 2010 Redistributable",
				"path": "directx_Jun2010_redist/DXSETUP.exe",
				"args": ""
			},

i think the shlex.split should fix this, could you retest?

@arielj
Copy link
Collaborator

arielj commented Dec 30, 2023

i think the shlex.split should fix this, could you retest?

yep! the shlex.split fixes that for rollercoaster tycoon

Copy link
Collaborator

@arielj arielj left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me!

I only tested on linux, I understand this has no impact on windows.

Also, the only game that really needed the pre-requisites for me was XCOM 2 and that now works out of the box with this change.

For the other games I own it looks like the pre-requisites are not really needed for the games to work (I didn't need the pre-requisites for any other game), but I think it's good to install them anyway, doesn't seem to create any issue anyway.

Copy link
Member

@flavioislima flavioislima left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

left a small comment, looks good otherwise.

@Etaash-mathamsetty Etaash-mathamsetty merged commit 1226add into Heroic-Games-Launcher:main Jan 1, 2024
@Heroic-Games-Launcher Heroic-Games-Launcher locked and limited conversation to collaborators Jan 1, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
pr:ready-for-review Feature-complete, ready for the grind! :P
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants