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

[Request]: Create symlink steamuser -> $USER in the bottle's user directory #3729

Open
jntesteves opened this issue Jan 27, 2025 · 2 comments

Comments

@jntesteves
Copy link
Contributor

jntesteves commented Jan 27, 2025

Tell us the problem or your need

Wine-based runners and Proton-based runners have different directories for the userdir, $USER and steamuser, respectively. This causes the issue that, when changing runners, it'll will seem like the user lost all their data, as the programs will be using a new, clean user directory.

Describe the solution you'd like

I propose as solution, we proactively create the $USER directory before bottle creation, then simply create a symlink called steamuser pointing to $USER. Then create the bottle with whatever runner, and it will use the already created directories and avoid the duplication. That way, both Wine- and Proton-based runners will share the same userdir, and the user won't lose their data when changing runners.

Other solutions?

No response

Additional context and references

I've been using this solution for a long time on my own bottles.

This enhancement would also fix bug #3728

@jntesteves jntesteves changed the title [Request]: Symlink steamuser -> $USER in the bottle's user directory [Request]: Create symlink steamuser -> $USER in the bottle's user directory Jan 27, 2025
@orowith2os
Copy link
Contributor

I think this is a reasonable solution, if someone wants to write the code to do so. It would be pretty nice if the runners themselves just used the same username configuration across the board though. Does WINE have an environment variable to set it, that works across the board? Perhaps one that changes the username used for the directory, and another for the display name. If not, it would be a very useful feature request, and also probably fairly backport-able.

The latter may require the Accounts portal to set properly.

@Qronikarz
Copy link
Contributor

I think you should first consult this change with mirkobrombin
bottlesdevs/wine#73
Seems like the steamuser user folder is a result of a bug in Soda 9. There's a mention of de-steamify patch that presumably gets rid of the steamuser folder, but haven't looked inside it.

As for the changing of username there definitely should be some code that changes it because Bottles passes the linux username. Though when I asked for the option to change the username inside Bottles, the dev deemed it unneccesary: #1564

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants