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

[GOG]: use native builds of ScummVM and DOSBox when available #3797

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

imLinguin
Copy link
Member

Tested with Alone in the Dark 1 (dosbox) and Beneath the Steel Sky (scummvm)

gogdl will pick available versions with following conditions

  • alternative executable isn't set (Game Settings -> Advanced)
  • executable is either dosbox.exe or scummvm.exe

possible executables gogdl will look for

Flatpak PATH
DOSBox io.github.dosbox-staging dosbox
ScummVM org.scummvm.ScummVM scummvm

when gogdl is in flatpak container it will attempt to call flatpak-spawn available through org.freedesktop.Flatpak session bus.

If none of the above are available default wine runner will be called

updated to gogdl 1.1.0 that includes 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)

@imLinguin imLinguin added the pr:ready-for-review Feature-complete, ready for the grind! :P label May 30, 2024
@imLinguin imLinguin requested review from a team, arielj, flavioislima, CommandMC, Etaash-mathamsetty and Nocccer and removed request for a team May 30, 2024 13:49
@imLinguin imLinguin linked an issue May 30, 2024 that may be closed by this pull request
@JKingweb
Copy link
Contributor

Would it make sense to also look for DOSBox-X? I'm not a DOSBox-X partisan myself, but it definitely has its adherents, and I can't think of any reason it couldn't also be used.

This would necessitate searching for com.dosbox_x.DOSBox-X and dosbox-x.

@imLinguin
Copy link
Member Author

I seem to be unable to run Alone in the Dark with DOSBox-X flatpak. It complains about missing CD-ROM driver, similarily to com.dosbox.DOSBox. So for compatibility with GOG's windows builds, staging seems to be the only option.

We may also need to add additional PATH lookup of dosbox-staging sometime in the future, various distro packages seem to be inconsistent about it. As far as I know Fedora has dosbox binary for staging while Arch package has it as dosbox-staging. I'll leave that for now, we can reconsider this later on

@JKingweb
Copy link
Contributor

Ah, right, DOSBox Staging is more forgiving when it comes to path matching. Makes sense.

@Nocifer
Copy link

Nocifer commented Jun 1, 2024

As far as I know Fedora has dosbox binary for staging while Arch package has it as dosbox-staging. I'll leave that for now, we can reconsider this later on

Arch's dosbox-staging package has the binary as simply dosbox as well, so there shouldn't be any problem on that front.

Copy link
Collaborator

@CommandMC CommandMC left a comment

Choose a reason for hiding this comment

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

I've tested this with a couple games and it does appear to be working fine.

Could you link to the commit hash of gogdl we're now using? I assume it's 7c9a6f4?

@imLinguin
Copy link
Member Author

I just found out this breaks compatibility with Diablo
due to it relying on drive letters in paths. I'm open to suggestions on how should we approach this.
One thing that comes to my mind is hardcoding the drive letters for everything except games with ScummVM

@imLinguin imLinguin added pr:wip WIP, don't merge. and removed pr:ready-for-review Feature-complete, ready for the grind! :P labels Jul 12, 2024
@imLinguin imLinguin added this to the 2.15.0 milestone Jul 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
pr:wip WIP, don't merge.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Launch DOS games using native system DOSBox
5 participants