-
Notifications
You must be signed in to change notification settings - Fork 117
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
Add functions to change OS and overwrite loading of libraries. #1
Comments
You can do most of that (if winetricks is installed) using the util.protontricks function. For example:
As far as dotnet goes, I'm working on the option to make win32 prefix that can be used with the versions of dotnet that won't install on a win64 prefix. |
I didn't know that it's that easy to change the OS with winetricks. For the library override, this is set in the user.reg file, as far as I know. Is there a way to set this with winetricks as well? The winetricks man page doesn't say anything about that. |
I found out that we can override the dlls temporarily with an environment variable: I don't think that a function to write this into the config is necessary. If you agree you can close this issue. |
Yeah winetricks documentation is a bit lacking, but looking at the sources (it's all shell script) it looks like it does set overrides in the registry when it runs. I think overriding with the environment variable is a good way to do it too, I'll go ahead and close the issue. |
Hmm, somehow the command doesn't work for me. No environment variable will be applied. To get sure I tried with The same is with This is the script I'm working on:
edit |
So, this won't work, because Proton overwrites these variables in the proton file.
|
I've created a pull request on Proton to allow own overrides with |
Looking for similar feature for Quick hack for fix.py (copy/paste from def game_settings():
""" Loads a gamefix module by it's gameid
"""
gameid = game_id()
if gameid is not None:
localpath = os.path.expanduser('~/.config/protonfixes/localfixes')
if os.path.isfile(os.path.join(localpath, gameid + '.py')):
open(os.path.join(localpath, '__init__.py'), 'a').close()
sys.path.append(os.path.expanduser('~/.config/protonfixes'))
try:
game_module = import_module('localfixes.' + gameid)
print('Using local protonfix settings for gameid', gameid)
return game_module.game_settings()
except ImportError:
print('No local protonfix settings found for gameid', gameid)
else:
try:
game_module = import_module('protonfixes.gamefixes.' + gameid)
print('Using protonfix settings for gameid', gameid)
return game_module.game_settings()
except ImportError:
print('No protonfix settings found for gameid', gameid)
print('No protonfix settings found for gameid', game_id()) user_settings.py (after import protonfixes
from protonfixes import fix
try:
user_settings.update(fix.game_settings())
except:
pass .config/protonfixes/localfixes/1234.py def game_settings():
return {
"WINEDEBUG" : "-all,+loaddll",
} test.py output
@simons-public , please provide official solution to do this. |
@pchome The pull request I send to Proton will allow using Using |
I mentioned
Can you please include fix for I have |
My pull request has been merged. Just a matter of time till it gets released. |
|
fixed the installation of pip and the python packages
…dier fixed the installation of pip and the python packages
Would be great if you could add functions so it's possible to change the OS on runtime. Default is Windows 7 but some installer need to run as XP. Another feature which would be really helpful is to overwrite how libraries are loaded.
For example, Little Nightmares needs
xact
installed but also setxaudio2_6
andxaudio2_7
to native. Another example is that some games need.net
and then setmscoree
to builtin.The text was updated successfully, but these errors were encountered: