Giter Club home page Giter Club logo

Comments (6)

Matoking avatar Matoking commented on July 30, 2024

I don't think it makes sense to implement custom installation verbs like this in protontricks itself. This would be better done upstream in Winetricks or as its own standalone script. A quick search reveals there's already an issue about this on Winetricks' repository.

However, it would make sense to add an optional parameter to run an arbitrary command in the scope of the game's installation directory (let's call it -c or --command); this would make it easier to run bleeding edge fixes that haven't been added to Winetricks yet.

With that, we could create a standalone script called install_mfplat.py for installing mfplat.dll which could then be run as an one-liner like this:

$ protontricks -c 'wget github.com/install_mfplat.py; chmod +x install_mfplat.py; ./install_mfplat.py' <GAME_ID>

from protontricks.

Glog78 avatar Glog78 commented on July 30, 2024

hmm i like the idea !!

I have maybe another suggestion which basically gives even more space to work with:
protontricks -setenv
... this could basically load all the environment variables , adjust the path for the proton version the game use and setup the wineprefix.
that way following commands in this shell would work as if you would use your local wine.

from protontricks.

Matoking avatar Matoking commented on July 30, 2024

I've added a --command / -c flag in the development branch. The command configures the relevant environment variables, so it should work fine for custom scripts.

I might take a look at making a standalone shell script for mfplat installation at a later time, so I'll leave this issue open for the time being.

from protontricks.

Glog78 avatar Glog78 commented on July 30, 2024

thank you alot for the work!
One additional idea: Wouldn't it make sense to addtional exporting a WINE Variable to adjust the path? example: export PATH={PathtoProtonWine}:$PATH

this way you can easy get an interactive environment -> protontricks -c /bin/bash AppID

Also for the documentation you might want to add that the right "$WINE" is the right way to use the variable in scripts because of the spaces in the variable.

from protontricks.

Matoking avatar Matoking commented on July 30, 2024

I wrote a script that should install mfplat for Steam games. It's available as a GitHub gist here. I don't have a game that requires mfplat to run to test myself, so your mileage may vary.

In short, you can use the script like this:

protontricks -c "wget https://gist.githubusercontent.com/Matoking/2017eeffc1cee82f4797530c67707437/raw/install_mfplat.sh; chmod +x install_mfplat.sh; ./install_mfplat.sh 64 Binaries;" <APPID>

The script has only two parameters, the first of which is the architecture (32 if it's 32-bit, 64 if it's 64-bit) and the output directory (in the example it's Binaries, so if you had a game installed in /SteamLibrary/steamapps/common/GameName/, the mfplat.dll would be copied into /SteamLibrary/steamapps/common/GameName/Binaries/mfplat.dll. You want the mfplat.dll to be placed into the same directory as the game's .exe file.


One additional idea: Wouldn't it make sense to addtional exporting a WINE Variable to adjust the path? example: export PATH={PathtoProtonWine}:$PATH

Makes sense. I'll look into adding this later.

from protontricks.

Matoking avatar Matoking commented on July 30, 2024

I've created a wiki page for the mfplat installation script (and possibly other scripts in the future) here.

Since there hasn't been any activity on this issue for a while and the script to install mfplat already exists, I'm closing the issue for now.

from protontricks.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.