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

[BUG]: Launcher is not working with Steam under NixOS #100

Open
shymega opened this issue Jul 9, 2024 · 32 comments
Open

[BUG]: Launcher is not working with Steam under NixOS #100

shymega opened this issue Jul 9, 2024 · 32 comments
Labels
bug Something isn't working enhancement New feature or request

Comments

@shymega
Copy link
Contributor

shymega commented Jul 9, 2024

Describe the bug

I'm trying this out on native Steam on NixOS. The Prefix download works fine (8.1), but I don't get the rundll32 errors.

The main issue is that the WeMod window 'frame' shows briefly, then exits. The launcher then brings up then troubleshooter.

I'm using Sway.

Steps to reproduce the behavior

  1. Install the launcher on NixOS 24.05, and download Prefix.
  2. Wait for the Prefix to extract.
  3. WeMod should flash briefly on Sway, then exit.

Expected behavior

WeMod should launch, then I should be able to use it as normal. However, repeating the process just brings up an empty frame. which then disappears.

Logs

The script wemod-laucher is running on version 1.477
Package 'FreeSimpleGUI' is missing
Package 'requests' is missing
Externally managed environment detected.
Virtual environment created successfully.
Pip finished successfully
Self update skipped
Re-running script within virtual environment
or to update or to run outside of flatpak with the command:
	['/data/Games/wemod-launcher/wemod_venv/bin/python', '/data/Games/wemod-launcher/wemod', '/home/dzr/.local/share/Steam/ubuntu12_32/reaper', 'SteamLaunch', 'AppId=379720', '--', '/home/dzr/.local/share/Steam/ubuntu12_32/steam-launch-wrapper', '--', '/data/Games/Steam/SteamLibrary/steamapps/common/SteamLinuxRuntime_sniper/_v2-entry-point', '--verb=waitforexitandrun', '--', '/home/dzr/.local/share/Steam/compatibilitytools.d/GE-Proton8-1/proton', 'waitforexitandrun', '/data/Games/Steam/SteamLibrary/steamapps/common/DOOM/DOOMx64.exe', '+com_skipIntroVideo 1 +set m_smooth 0']

The rerun nr 1 was started
The script wemod-laucher is running on version 1.477
Self update skipped
The normal args list is 13 long and the full contents are:
	['/home/dzr/.local/share/Steam/ubuntu12_32/reaper', 'SteamLaunch', 'AppId=379720', '--', '/home/dzr/.local/share/Steam/ubuntu12_32/steam-launch-wrapper', '--', '/data/Games/Steam/SteamLibrary/steamapps/common/SteamLinuxRuntime_sniper/_v2-entry-point', '--verb=waitforexitandrun', '--', '/home/dzr/.local/share/Steam/compatibilitytools.d/GE-Proton8-1/proton', 'waitforexitandrun', '/data/Games/Steam/SteamLibrary/steamapps/common/DOOM/DOOMx64.exe', '+com_skipIntroVideo 1 +set m_smooth 0']
Looking for init file '/data/Games/Steam/SteamLibrary/steamapps/compatdata/379720/pfx/.wemod_installer'
Looking once more for the init file
Syncing wemod data from '/data/Games/Steam/SteamLibrary/steamapps/compatdata/379720/pfx/drive_c/users/steamuser/AppData/Roaming/WeMod' to laucher dir '/data/Games/wemod-launcher/wemod_data'
Found init file. Continuing launch...
D:/data/Games/Steam/SteamLibrary/steamapps/common/DOOM
R:['/home/dzr/.local/share/Steam/ubuntu12_32/reaper', 'SteamLaunch', 'AppId=379720', '--', '/home/dzr/.local/share/Steam/ubuntu12_32/steam-launch-wrapper', '--', '/data/Games/Steam/SteamLibrary/steamapps/common/SteamLinuxRuntime_sniper/_v2-entry-point', '--verb=waitforexitandrun', '--']
P:/home/dzr/.local/share/Steam/compatibilitytools.d/GE-Proton8-1/proton
V:['waitforexitandrun']
B:['start', 'Z:\\\\data\\\\Games\\\\wemod-launcher\\\\wemod.bat']
G:DOOMx64.exe
L:['+com_skipIntroVideo 1 +set m_smooth 0']
Creating a game time tracking file, the file is:
	/data/Games/wemod-launcher/.cache/early.tmp
Executing:
	['/home/dzr/.local/share/Steam/ubuntu12_32/reaper', 'SteamLaunch', 'AppId=379720', '--', '/home/dzr/.local/share/Steam/ubuntu12_32/steam-launch-wrapper', '--', '/data/Games/Steam/SteamLibrary/steamapps/common/SteamLinuxRuntime_sniper/_v2-entry-point', '--verb=waitforexitandrun', '--', '/home/dzr/.local/share/Steam/compatibilitytools.d/GE-Proton8-1/proton', 'waitforexitandrun', 'start', 'Z:\\\\data\\\\Games\\\\wemod-launcher\\\\wemod.bat', 'DOOMx64.exe', '+com_skipIntroVideo 1 +set m_smooth 0']
Starting troubleshooter
Selected in the troubleshooter was 'Enable troubleshooter globaly'
Starting troubleshooter
Selected in the troubleshooter was 'Enable troubleshooter for this game'
Starting troubleshooter
Selected in the troubleshooter was 'Disable troubleshooter globaly'
Starting troubleshooter
Selected in the troubleshooter was 'Close wemod-laucher'
Closing troubleshooter as requested
Exit command with 0
EXIT

Screenshots

No response

System Information

NixOS 24.05
Sway (stable channel).
Native Steam, no Flatpak.
Proton 8.1 (also tried 9.1, no luck)

Additional context

No response

@shymega shymega added the bug Something isn't working label Jul 9, 2024
@marvin1099
Copy link
Collaborator

Have you tryed any other games?
It looks pretty good,
one thing the arguments you have set for the game (+com_skipIntroVideo 1 +set m_smooth 0) is passed as a single argument,
if you can then these args should be split.
Your steam start options should look like this:
/home/$USER/wemod-launcher/wemod %command% +com_skipIntroVideo 1 +set m_smooth 0 but i think right now they might be set like this:
/home/$USER/wemod-launcher/wemod %command% '+com_skipIntroVideo 1 +set m_smooth 0'.
This may not be the problem but i can't see anything else that is wrong with this.

You can try to delete the game prefix manualy (there is also a automatic option in the troubleshooter)

Make shure to allways try the game with wemod twice just in case its a one of thing,
also ge-proton works the best in my expirence.

@shymega
Copy link
Contributor Author

shymega commented Jul 9, 2024

I've tried DOOM 2016 and Eternal. I've also modified the start options. No luck.

I've got a new log from Black Mesa:

The script wemod-laucher is running on version 1.477
Package 'FreeSimpleGUI' is missing
Package 'requests' is missing
Externally managed environment detected.
Virtual environment created successfully.
Pip finished successfully
Self update skipped
Re-running script within virtual environment
or to update or to run outside of flatpak with the command:
	['/data/Games/wemod-launcher/wemod_venv/bin/python', '/data/Games/wemod-launcher/wemod', '/home/dzr/.local/share/Steam/ubuntu12_32/reaper', 'SteamLaunch', 'AppId=362890', '--', '/home/dzr/.local/share/Steam/ubuntu12_32/steam-launch-wrapper', '--', '/data/Games/Steam/SteamLibrary/steamapps/common/SteamLinuxRuntime_sniper/_v2-entry-point', '--verb=waitforexitandrun', '--', '/home/dzr/.local/share/Steam/compatibilitytools.d/GE-Proton8-1/proton', 'waitforexitandrun', '/data/Games/Steam/SteamLibrary/steamapps/common/Black Mesa/bms.exe', '-steam']

The rerun nr 1 was started
The script wemod-laucher is running on version 1.477
Self update skipped
The normal args list is 13 long and the full contents are:
	['/home/dzr/.local/share/Steam/ubuntu12_32/reaper', 'SteamLaunch', 'AppId=362890', '--', '/home/dzr/.local/share/Steam/ubuntu12_32/steam-launch-wrapper', '--', '/data/Games/Steam/SteamLibrary/steamapps/common/SteamLinuxRuntime_sniper/_v2-entry-point', '--verb=waitforexitandrun', '--', '/home/dzr/.local/share/Steam/compatibilitytools.d/GE-Proton8-1/proton', 'waitforexitandrun', '/data/Games/Steam/SteamLibrary/steamapps/common/Black Mesa/bms.exe', '-steam']
Looking for init file '/data/Games/Steam/SteamLibrary/steamapps/compatdata/362890/pfx/.wemod_installer'
Looking once more for the init file
Syncing wemod data from '/data/Games/Steam/SteamLibrary/steamapps/compatdata/362890/pfx/drive_c/users/steamuser/AppData/Roaming/WeMod' to laucher dir '/data/Games/wemod-launcher/wemod_data'
Found init file. Continuing launch...
D:/data/Games/Steam/SteamLibrary/steamapps/common/Black Mesa
R:['/home/dzr/.local/share/Steam/ubuntu12_32/reaper', 'SteamLaunch', 'AppId=362890', '--', '/home/dzr/.local/share/Steam/ubuntu12_32/steam-launch-wrapper', '--', '/data/Games/Steam/SteamLibrary/steamapps/common/SteamLinuxRuntime_sniper/_v2-entry-point', '--verb=waitforexitandrun', '--']
P:/home/dzr/.local/share/Steam/compatibilitytools.d/GE-Proton8-1/proton
V:['waitforexitandrun']
B:['start', 'Z:\\\\data\\\\Games\\\\wemod-launcher\\\\wemod.bat']
G:bms.exe
L:['-steam']
Creating a game time tracking file, the file is:
	/data/Games/wemod-launcher/.cache/early.tmp
Executing:
	['/home/dzr/.local/share/Steam/ubuntu12_32/reaper', 'SteamLaunch', 'AppId=362890', '--', '/home/dzr/.local/share/Steam/ubuntu12_32/steam-launch-wrapper', '--', '/data/Games/Steam/SteamLibrary/steamapps/common/SteamLinuxRuntime_sniper/_v2-entry-point', '--verb=waitforexitandrun', '--', '/home/dzr/.local/share/Steam/compatibilitytools.d/GE-Proton8-1/proton', 'waitforexitandrun', 'start', 'Z:\\\\data\\\\Games\\\\wemod-launcher\\\\wemod.bat', 'bms.exe', '-steam']
Starting troubleshooter

I'm not seeing anything other than the troubleshooter, and what appears to be no attempt to start WeMod.

It's slightly odd. I've also tried deleting the Prefix, and Wemod.exe, with no success.

I'm using Proton-GE 8.1 currently.

@shymega
Copy link
Contributor Author

shymega commented Jul 9, 2024

I should add that the setup process for WeMod appears to succeed. But after you click 'OK' on the 'Finished' prompt, it goes straight to the troubleshooter.

@shymega
Copy link
Contributor Author

shymega commented Jul 9, 2024

Just tried (three times after a fresh Prefix download, as recommended) on KDE Wayland, KDE X11, and Sway. The same issue persists.

@marvin1099
Copy link
Collaborator

marvin1099 commented Jul 10, 2024

Please try with ge-proton 9.x,
I know that 9.x works for shure,
also delete the prefix and try without args.
I don't think the args are the problem but im still not shure what is going on.

I take it you tried to follow the full guide,
if not see if there is something you missed from there, but i still have no idea.

Oh also make sure the game will start without the wemod-launcher.

@marvin1099
Copy link
Collaborator

marvin1099 commented Jul 10, 2024

Please do not disable updates if you don't have to,
these updates are mostly fixes,
it says in your logs "self update skiped"
Please remove the config entry that blocks updates

@shymega
Copy link
Contributor Author

shymega commented Jul 10, 2024

Please try with ge-proton 9.x, I know that 9.x works for shure, also delete the prefix and try without args. I don't think the args are the problem but im still not shure what is going on.

I take it you tried to follow the full guide, if not see if there is something you missed from there, but i still have no idea.

Oh also make sure the game will start without the wemod-launcher.

Tried with GE-Proton 9.1. No luck. I've also tried deleting the prefix, and without additional args.

The game launches fine without the launcher. I did follow the full guide, and not using Flatpak.

Logs here:

The script wemod-laucher is running on version 1.480
Package 'FreeSimpleGUI' is missing
Package 'requests' is missing
Externally managed environment detected.
Virtual environment created successfully.
Pip finished successfully
No updates available
Re-running script within virtual environment
or to update or to run outside of flatpak with the command:
        ['/data/Games/wemod-launcher/wemod_venv/bin/python', '/data/Games/wemod-launcher/wemod', '/home/dzr/.local/share/Steam/ubuntu12_32/reaper', 'SteamLaunch', 'AppId=782330', '--', '/home/dzr/.local/share/Steam/ubuntu12_32/steam-launch-wrapper', '--', '/data/Games/Steam/SteamLibrary/steamapps/common/SteamLinuxRuntime_sniper/_v2-entry-point', '--verb=waitforexitandrun', '--', '/home/dzr/.local/share/Steam/compatibilitytools.d/GE-Proton9-1/proton', 'waitforexitandrun', '/data/Games/Steam/SteamLibrary/steamapps/common/DOOMEternal/idTechLauncher.exe', '+com_skipIntroVideo', '1', '+set', 'm_smooth', '0']

The rerun nr 1 was started
The script wemod-laucher is running on version 1.480
No updates available
The normal args list is 17 long and the full contents are:
        ['/home/dzr/.local/share/Steam/ubuntu12_32/reaper', 'SteamLaunch', 'AppId=782330', '--', '/home/dzr/.local/share/Steam/ubuntu12_32/steam-launch-wrapper', '--', '/data/Games/Steam/SteamLibrary/steamapps/common/SteamLinuxRuntime_sniper/_v2-entry-point', '--verb=waitforexitandrun', '--', '/home/dzr/.local/share/Steam/compatibilitytools.d/GE-Proton9-1/proton', 'waitforexitandrun', '/data/Games/Steam/SteamLibrary/steamapps/common/DOOMEternal/idTechLauncher.exe', '+com_skipIntroVideo', '1', '+set', 'm_smooth', '0']
Looking for init file '/data/Games/Steam/SteamLibrary/steamapps/compatdata/782330/pfx/.wemod_installer'
Looking once more for the init file
Syncing wemod data from '/data/Games/Steam/SteamLibrary/steamapps/compatdata/782330/pfx/drive_c/users/steamuser/AppData/Roaming/WeMod' to laucher dir '/data/Games/wemod-launcher/wemod_data'
Found init file. Continuing launch...
D:/data/Games/Steam/SteamLibrary/steamapps/common/DOOMEternal
R:['/home/dzr/.local/share/Steam/ubuntu12_32/reaper', 'SteamLaunch', 'AppId=782330', '--', '/home/dzr/.local/share/Steam/ubuntu12_32/steam-launch-wrapper', '--', '/data/Games/Steam/SteamLibrary/steamapps/common/SteamLinuxRuntime_sniper/_v2-entry-point', '--verb=waitforexitandrun', '--']
P:/home/dzr/.local/share/Steam/compatibilitytools.d/GE-Proton9-1/proton
V:['waitforexitandrun']
B:['start', 'Z:\\\\data\\\\Games\\\\wemod-launcher\\\\wemod.bat']
G:idTechLauncher.exe
L:['+com_skipIntroVideo', '1', '+set', 'm_smooth', '0']
Creating a game time tracking file, the file is:
        /data/Games/wemod-launcher/.cache/early.tmp
Executing:
        ['/home/dzr/.local/share/Steam/ubuntu12_32/reaper', 'SteamLaunch', 'AppId=782330', '--', '/home/dzr/.local/share/Steam/ubuntu12_32/steam-launch-wrapper', '--', '/data/Games/Steam/SteamLibrary/steamapps/common/SteamLinuxRuntime_sniper/_v2-entry-point', '--verb=waitforexitandrun', '--', '/home/dzr/.local/share/Steam/compatibilitytools.d/GE-Proton9-1/proton', 'waitforexitandrun', 'start', 'Z:\\\\data\\\\Games\\\\wemod-launcher\\\\wemod.bat', 'idTechLauncher.exe', '+com_skipIntroVideo', '1', '+set', 'm_smooth', '0']
Starting troubleshooter
Selected in the troubleshooter was 'Close wemod-laucher'
Closing troubleshooter as requested
Exit command with 0
EXIT```

@shymega
Copy link
Contributor Author

shymega commented Jul 10, 2024

Please do not disable updates if you don't have to, these updates are mostly fixes, it says in your logs "self update skiped" Please remove the config entry that blocks updates

I disabled updates because the updater overrides my changes. Despite using the Nix Steam package with Tkinter and Python (+pip, virtualenv) in Steam's $PATH, the launcher fails to import Tkinter with importlib. Removing these lines fixes the issue.

It's only a temporary hack, but the Tk UI loads fine without the importlib lines.

I can't switch distros, but I am going to try the Flatpak version of Steam on the guide. I'll keep you posted.

@shymega
Copy link
Contributor Author

shymega commented Jul 10, 2024

Flatpak is stuck on 'The rerun nr 1 was started', with no progress. Proton 9.1, Doom Eternal.

@marvin1099
Copy link
Collaborator

Please do not disable updates if you don't have to, these updates are mostly fixes, it says in your logs "self update skiped" Please remove the config entry that blocks updates

I disabled updates because the updater overrides my changes. Despite using the Nix Steam package with Tkinter and Python (+pip, virtualenv) in Steam's $PATH, the launcher fails to import Tkinter with importlib. Removing these lines fixes the issue.

It's only a temporary hack, but the Tk UI loads fine without the importlib lines.

I can't switch distros, but I am going to try the Flatpak version of Steam on the guide. I'll keep you posted.

The flatpac version works worse its not recommended,
it really make no difference since the wemod-laucher will launch itself outside of the flatpac anyway,
but i can maby fix that tk problem,
other then that im out of ideas sorry,
if you have a other device you can try it on do that.

@marvin1099
Copy link
Collaborator

Try to enable updates and see if it works now.
This really puzzles me.
Can you try to run the launcher over Lutris
and use a simple windows game without DRM,
just run that directly (so no steam) in Lutrus using the wine-ge runner,
this is a simple setup since some of the complexity of the launcher comes from the steam drm.
If you are looking for a game without drm,
gog games dont have any drm.
for testing you could also use any windows software like
a portable windows calculator.

@marvin1099
Copy link
Collaborator

Flatpak is stuck on 'The rerun nr 1 was started', with no progress. Proton 9.1, Doom Eternal.

You probably haven't done this is my guess:
https://github.com/DaniAsh551/wemod-launcher/wiki/Steam-Flatpak-Usage
But as mentioned its not worth it.
Try the other things i mentioned instead.

@shymega
Copy link
Contributor Author

shymega commented Jul 10, 2024

Flatpak is stuck on 'The rerun nr 1 was started', with no progress. Proton 9.1, Doom Eternal.

You probably haven't done this is my guess: https://github.com/DaniAsh551/wemod-launcher/wiki/Steam-Flatpak-Usage But as mentioned its not worth it. Try the other things i mentioned instead.

I did everything apart from xdg-utils. NixOS has no package for that, and installing into /usr/local isn't recommended.

@shymega
Copy link
Contributor Author

shymega commented Jul 10, 2024

Try to enable updates and see if it works now. This really puzzles me. Can you try to run the launcher over Lutris and use a simple windows game without DRM, just run that directly (so no steam) in Lutrus using the wine-ge runner, this is a simple setup since some of the complexity of the launcher comes from the steam drm. If you are looking for a game without drm, gog games dont have any drm. for testing you could also use any windows software like a portable windows calculator.

I don't have any non-Steam games that are supported by Lutris.

How could I test Calculator? Would I need to launch WeMod with that?

@shymega
Copy link
Contributor Author

shymega commented Jul 10, 2024

I'm also writing my own cheat handler currently, so I may collaborate with you and Dani (are you both on Discord?) for inspiration. It's more of an integrated one, written in Rust with a OS-native GUI.

The idea is that it'd be a single executable,, support PLITCH, WeMod, and other trainers. It would also run as a 'Steam Play' tool, and launch Proton itself.

@marvin1099
Copy link
Collaborator

Try to enable updates and see if it works now. This really puzzles me. Can you try to run the launcher over Lutris and use a simple windows game without DRM, just run that directly (so no steam) in Lutrus using the wine-ge runner, this is a simple setup since some of the complexity of the launcher comes from the steam drm. If you are looking for a game without drm, gog games dont have any drm. for testing you could also use any windows software like a portable windows calculator.

I don't have any non-Steam games that are supported by Lutris.

How could I test Calculator? Would I need to launch WeMod with that?

You use a app like this
https://portableapps.com/apps/office/qalculate-portable
Its just a windows app that will run in wine.

@marvin1099
Copy link
Collaborator

marvin1099 commented Jul 10, 2024

I'm also writing my own cheat handler currently, so I may collaborate with you and Dani (are you both on Discord?) for inspiration. It's more of an integrated one, written in Rust with a OS-native GUI.

The idea is that it'd be a single executable,, support PLITCH, WeMod, and other trainers. It would also run as a 'Steam Play' tool, and launch Proton itself.

I would be intrested,
but i dont think dani is still that active, he has things to do i think,
also this idea of yours souds difficult to make,
I don't think it will be that easy.
First of you have to know a bunch of wine stuff also know lots of rust and know what these tools expect to have to work like, things like dotnet and other reqirements.
But yes shure lets talk on Discord,
my username ob Discord is just marvin1099
Also today is not going to work i don't feel that good.

@shymega
Copy link
Contributor Author

shymega commented Jul 10, 2024

Try to enable updates and see if it works now. This really puzzles me. Can you try to run the launcher over Lutris and use a simple windows game without DRM, just run that directly (so no steam) in Lutrus using the wine-ge runner, this is a simple setup since some of the complexity of the launcher comes from the steam drm. If you are looking for a game without drm, gog games dont have any drm. for testing you could also use any windows software like a portable windows calculator.

I don't have any non-Steam games that are supported by Lutris.
How could I test Calculator? Would I need to launch WeMod with that?

You use a app like this https://portableapps.com/apps/office/qalculate-portable Its just a windows app that will run in wine.

So I tried running that app, but wasn't sure which option to use. Lutris is using GE-9.1, but I was not sure what 'system option' to use - i.e, 'pre-launch', 'manual script', or 'command prefix'.

@shymega
Copy link
Contributor Author

shymega commented Jul 10, 2024

I'm also writing my own cheat handler currently, so I may collaborate with you and Dani (are you both on Discord?) for inspiration. It's more of an integrated one, written in Rust with a OS-native GUI.
The idea is that it'd be a single executable,, support PLITCH, WeMod, and other trainers. It would also run as a 'Steam Play' tool, and launch Proton itself.

I would be intrested, but i dont think dani is still that active, he has things to do i think, also this idea of yours souds difficult to make, I don't think it will be that easy. First of you have to know a bunch of wine stuff also know lots of rust and know what these tools expect to have to work like, things like dotnet and other reqirements. But yes shure lets talk on Discord, my username ob Discord is just marvin1099 Also today is not going to work i don't feel that good.

I am experienced with this kind of thing. I've added you on Discord, and it'll be a while before Deckcheatz is ready

@marvin1099
Copy link
Collaborator

@shymega
Copy link
Contributor Author

shymega commented Jul 11, 2024

I just tried an experiment.

Instaling Qalculate as a 'non-Steam game', into a Proton 9.1 prefix, launching once (success!), and then trying to launch with `wemod-launcher.

Unfortunately, this results in a infinite script re-run. The reason I tried this was to see if the launcher could work with non-Steam games, which might rule out a game-related issue.

Logs attached.
wemod.txt

@marvin1099
Copy link
Collaborator

the reason for this is i think that making files executable changes the file so git will try to pull a update,
when it always tryes to update it results in a infinite rerun,
i thought i had fixed this by getting the file hashes with this code

        # Get local and remote commit hashes
        local_hash = subprocess.run(
            ["git", "rev-parse", "@"], stdout=subprocess.PIPE, text=True
        ).stdout.strip()
        remote_hash = subprocess.run(
            ["git", "rev-parse", "@{u}"], stdout=subprocess.PIPE, text=True
        ).stdout.strip()
        base_hash = subprocess.run(
            ["git", "merge-base", "@", "@{u}"],
            stdout=subprocess.PIPE,
            text=True,
        ).stdout.strip()

you can try and look at the update function to see if you can fix it,
I will also try but I'm not shure how to do it so far.
the function is called self_update and is located in the setup.py file.

@shymega
Copy link
Contributor Author

shymega commented Jul 11, 2024

It's probably because I had made some patches, and so it went into a loop updating. I'm happy keeping self-update off (and true to Nix, I'd rather updates were done myself), which works for now.

Do you think the 'double-escaped' string passed to Proton could be the issue?

Also, do you think that the fact I use a separate partition, and directory structure for Steam Library could be related? It runs on BTRFS.

@shymega
Copy link
Contributor Author

shymega commented Jul 11, 2024

OK, so I tried on Bazzite. However, this time, I mounted the Games partition to $HOME/Games, using KDE, and a fresh Prefix 9.1-GE download. Success!

This looks like it could be a path issue, or NixOS. Proposal: continue debugging here.

@shymega
Copy link
Contributor Author

shymega commented Jul 11, 2024

I have now mounted the Games drive on NixOS to $HOME/Games. I think there's a bit of progress here.

Because of NixOS's quirks, I need to run Steam in Flatpak. I'm just not sure how to install these Flatpak XDG tools. Currently it hangs on 'rerun nr 1'.

@shymega
Copy link
Contributor Author

shymega commented Jul 11, 2024

Oh, I see now. The XDG tools run inside the Flatpak container. So I do not need to do anything - the Steam Flatpak should have this built-in.

@shymega
Copy link
Contributor Author

shymega commented Jul 11, 2024

Identified a bug with Flatpak. The ENV variables need to be passed in format --env=$KEY=$VAL. Currently it doesn't do that. I've patched that, but because NixOS can't call Python outside the venv from flatpak-spawn --host, I'm making a NixOS package.

I can't do much there, without setup.py being renamed. It conflicts with PEP conventions. Perhaps init.py/prepare.py? Can we do that?

If we can, I can then contribute a Nix package to this repo, allowing NixOS users to use this software.

@shymega
Copy link
Contributor Author

shymega commented Jul 11, 2024

I'm working on this in a branch. You can find it on my fork. I'll make a draft PR tomorrow when I've slept.

I have made two PRs that fix Flatpak bugs.

@marvin1099
Copy link
Collaborator

marvin1099 commented Jul 12, 2024

Sounds good,
i will merge any fixes as long as it dosn't break anything,
the renaming of setup.py is fine btw. that file was never used in any startup command therfore nothing breaks.
Your help is nice if look back at the state of the laucher before i have joined, well it wasa bit buggy and also in 3 files.
Becalse of all the nice feacures i split the functions into 7 files.
Now its a bit easyer to read i think.
I tryed my best to keep some struture, on a projcect that did not have a lot of it to beginn with.
Also I'm not that godd with kepping struture, it may be better than before but i can only go so far.

@marvin1099 marvin1099 added the enhancement New feature or request label Aug 7, 2024
@marvin1099 marvin1099 changed the title [BUG]: WeMod flashes up momentarily (empty frame), then exits. [BUG]: Launcher is not working with Steam under NixOS Aug 24, 2024
@marvin1099
Copy link
Collaborator

This is a possible rework of the wemod launcher so it can work in containers,
as well as on nix (for anyone else looking at this).

Right now I'm thinking of closing this issue as I'm in comunication with shymega anyway.
Not sure if there lots of reason to keep this issue open, it has been open for a while and can still be tracked in the pull requests, so i would close this if there are no objections.

@shymega
Copy link
Contributor Author

shymega commented Oct 15, 2024

I intended for #105 to close this issue, as the problem will be resolved with PR #105.

@shymega shymega reopened this Oct 15, 2024
@marvin1099
Copy link
Collaborator

Thats good to.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants