rockerbacon / modorganizer2-linux-installer

An easy-to-use Mod Organizer 2 installer for Linux
GNU General Public License v3.0
1.02k stars 80 forks source link

A prefix for selected game could not be found #615

Open NetariW0lf opened 6 months ago

NetariW0lf commented 6 months ago

(New linux user)

after getting through most of the installation for mo2 post installation of falloutnew vegas i get this error.

A prefix for the selected game could not be found. Make sure you have followed the instructions on creating a clean prefix'

This is what the terminal gives me.

INFO: all dependencies met INFO: selected game 'newvegas' INFO: found Steam in '/home/tony/.steam/debian-installation' INFO: game found in '/home/tony/.steam/debian-installation' INFO: steam not found in '/home/tony/.var/app/com.valvesoftware.Steam/.local/share/Steam' INFO: user confirmed prefix setup ERROR: no prefix found

From what I can figure either i'm in the wrong directory or i need to create this 'prefix' as a new user to linux (Mint Cinnamon) I'm unsure of what to do.

rockerbacon commented 6 months ago

If you correctly followed the instructions on screen, that's a Protontricks issue. Does New Vegas show up when you run Protontricks on its own?

NetariW0lf commented 6 months ago

how do you run protontricks? I don't think protontricks is a program to run.

Remember:New to linux.

rockerbacon commented 6 months ago

You should find Protontricks in the Mint start menu. If for some reason it is not there, you can run it from a terminal:

protontricks || flatpak run com.github.Matoking.protontricks
NetariW0lf commented 6 months ago

protontricks does see new vegas

TheShadowOfHassen commented 6 months ago

I have the same issue but protontricks sees new vegas.

NetariW0lf commented 6 months ago

yeah i'm still trying to figure out what to do.

TheShadowOfHassen commented 6 months ago

I'm having the same error when running the program. After rereading your previous comment @NetariW0lf, I think are problems are identical. I'm running Pop!_OS 20.04 which I think is the same Ubuntu base as the latest mint.

Seeing that you're new to Linux, @NetariW0lf, I just want to say it's usually best practices to say the exact version / distro you're using. Do you know what version of Mint you're running? It could help the devs figure this out.

TheShadowOfHassen commented 6 months ago

So I figured out the problem. @NetariW0lf run this in the terminal

sudo apt remove protontricks (It's too old) flatpak install com.github.Matoking.protontricks/x86_64/stable Next run echo "alias protontricks='flatpak run com.github.Matoking.protontricks'" >> ~/.bashrc echo "alias protontricks-launch='flatpak run --command=protontricks-launch com.github.Matoking.protontricks'" >> ~/.bashrc

Finally, install flatseal from the app store and give it permission to read/write your home folder. Then try the installer again.

NetariW0lf commented 6 months ago

So I figured out the problem. @NetariW0lf run this in the terminal

sudo apt remove protontricks (It's too old) flatpak install com.github.Matoking.protontricks/x86_64/stable Next run echo "alias protontricks='flatpak run com.github.Matoking.protontricks'" >> ~/.bashrc echo "alias protontricks-launch='flatpak run --command=protontricks-launch com.github.Matoking.protontricks'" >> ~/.bashrc

Finally, install flatseal from the app store and give it permission to read/write your home folder. Then try the installer again.


Before i do all this can you explain what this all is to me i understand the remove part and the flatpack install but after that you've lost me and why do i need to install flatseal?

Reminder:New to Linux For once i'd like to understand what I'm typing instead of blantly typing it.

NetariW0lf commented 6 months ago

I'm having the same error when running the program. After rereading your previous comment @NetariW0lf, I think are problems are identical. I'm running Pop!_OS 20.04 which I think is the same Ubuntu base as the latest mint.

Seeing that you're new to Linux, @NetariW0lf, I just want to say it's usually best practices to say the exact version / distro you're using. Do you know what version of Mint you're running? It could help the devs figure this out.

Mint Cinnamon 21.3, how do i look up the exact version? I did say mint Cinnamon in the begining

i tried /etc/*-release and terminal said bash: /etc/lsb-release: Permission denied So i used another terminal command to get the version

TheShadowOfHassen commented 6 months ago

So I figured out the problem. @NetariW0lf run this in the terminal sudo apt remove protontricks (It's too old) flatpak install com.github.Matoking.protontricks/x86_64/stable Next run echo "alias protontricks='flatpak run com.github.Matoking.protontricks'" >> ~/.bashrc echo "alias protontricks-launch='flatpak run --command=protontricks-launch com.github.Matoking.protontricks'" >> ~/.bashrc Finally, install flatseal from the app store and give it permission to read/write your home folder. Then try the installer again.

Before i do all this can you explain what this all is to me i understand the remove part and the flatpack install but after that you've lost me and why do i need to install flatseal?

Reminder:New to Linux For once i'd like to understand what I'm typing instead of blantly typing it.

So the other two commands add the flatpak to a path where the system can call it. You see, flatpak is a sandboxed application, and usually it and your system (Linux mint) don't mess with one another.

The two commands I took from the source for protontricks, because it is how the guy reccomends doing it: https://github.com/Matoking/protontricks

Flatseal is a tool to handle flatpak permissions. Flatpak is sandboxed by default, and we have to use flatseal to let prontontricks out of its sandbox and be able to access your home folder.

LethalManBoob commented 6 months ago

(New linux user)

after getting through most of the installation for mo2 post installation of falloutnew vegas i get this error.

A prefix for the selected game could not be found. Make sure you have followed the instructions on creating a clean prefix'

This is what the terminal gives me.

INFO: all dependencies met INFO: selected game 'newvegas' INFO: found Steam in '/home/tony/.steam/debian-installation' INFO: game found in '/home/tony/.steam/debian-installation' INFO: steam not found in '/home/tony/.var/app/com.valvesoftware.Steam/.local/share/Steam' INFO: user confirmed prefix setup ERROR: no prefix found

From what I can figure either i'm in the wrong directory or i need to create this 'prefix' as a new user to linux (Mint Cinnamon) I'm unsure of what to do.

Are you accidental selecting yes do archiving your prefix? Try re reading the instructions, i got stuck there as well.

NetariW0lf commented 6 months ago

So I figured out the problem. @NetariW0lf run this in the terminal sudo apt remove protontricks (It's too old) flatpak install com.github.Matoking.protontricks/x86_64/stable Next run echo "alias protontricks='flatpak run com.github.Matoking.protontricks'" >> ~/.bashrc echo "alias protontricks-launch='flatpak run --command=protontricks-launch com.github.Matoking.protontricks'" >> ~/.bashrc Finally, install flatseal from the app store and give it permission to read/write your home folder. Then try the installer again.

Before i do all this can you explain what this all is to me i understand the remove part and the flatpack install but after that you've lost me and why do i need to install flatseal? Reminder:New to Linux For once i'd like to understand what I'm typing instead of blantly typing it.

So the other two commands add the flatpak to a path where the system can call it. You see, flatpak is a sandboxed application, and usually it and your system (Linux mint) don't mess with one another.

The two commands I took from the source for protontricks, because it is how the guy reccomends doing it: https://github.com/Matoking/protontricks

Flatseal is a tool to handle flatpak permissions. Flatpak is sandboxed by default, and we have to use flatseal to let prontontricks out of its sandbox and be able to access your home folder.


Would flatseal allow me to run mod organizer from the desktop?

TheShadowOfHassen commented 6 months ago

No, flatseal allows proton tricks out of its box so it can access your files.

I'm not sure what you mean by desktop, though, as in an app?

NetariW0lf commented 6 months ago

No, flatseal allows proton tricks out of its box so it can access your files.

I'm not sure what you mean by desktop, though, as in an app?


on windows there's a shortcut i can clikc on the desktop to launch the app.

TheShadowOfHassen commented 6 months ago

You would make the desktop shortcut using steam. Right click a game in the steam library go to manage and the option is there.

NetariW0lf commented 6 months ago

I want to launch mo2 not the game, because i don't want to update skyrim from SE to AE

TheShadowOfHassen commented 6 months ago

This installer (at least for my fallout) rerouted the game through the steam play button. You press play in the steam to launch the mod utility. I can't help you much more or explain why they did that. I didn't write the script.

swjzielinski commented 6 months ago

I want to launch mo2 not the game, because i don't want to update skyrim from SE to AE

You might be able to set up Lutris so that you can launch the executable outside of Steam.

Alternatively you can go offline in Steam and play from there.

NetariW0lf commented 6 months ago

I want to launch mo2 not the game, because i don't want to update skyrim from SE to AE

You might be able to set up Lutris so that you can launch the executable outside of Steam.

Alternatively you can go offline in Steam and play from there.


I'll look more into it later, i want to use linux mint as my main OS at least on my next PC, but m02 is probably the last thing i need to get working before i can fully switch over Steam has alot of my games covered, but i need mo2 for mods i use alot. I really want to avoid windows 11 if possible.

I wonder if you can just run the windows version of M02 with something like wine or lutris....

swjzielinski commented 6 months ago

I want to launch mo2 not the game, because i don't want to update skyrim from SE to AE

You might be able to set up Lutris so that you can launch the executable outside of Steam. Alternatively you can go offline in Steam and play from there.

I'll look more into it later, i want to use linux mint as my main OS at least on my next PC, but m02 is probably the last thing i need to get working before i can fully switch over Steam has alot of my games covered, but i need mo2 for mods i use alot. I really want to avoid windows 11 if possible.

I wonder if you can just run the windows version of M02 with something like wine or lutris....

Lutris in itself is just a program to manage games. It uses Wine to run Windows games. It's also possible to run a program with Wine through the terminal.

rockerbacon commented 6 months ago

Running outside of Steam is possible but not recommended, see #275. Refer to #544 for game update related discussions.

Edit: post-install instructions also includes some info on running MO2 from outside of Steam.

Aldahir215 commented 6 months ago

I have been having this same issue and uninstalled and reinstalled all programs, including FNV, Protontricks and 7z. I run Pop OS 22.04. I have the flatpak version of Steam and Protontricks. I uninstalled protontricks that you get from the ubuntu repository. I also had flatseal give protontricks permissions to my home folder and it still does not work. FNV does launch when running normally and I checked the compat folder in steam and the game prefix is there. When launching protontricks it does detect fallout new vegas. Is there something I am doing wrong?

swjzielinski commented 6 months ago

Can you run the command flatpak run 'com.github.Matoking.protontricks' -c 'echo $WINEPREFIX' 22380

It should display the path to the FNV prefix.

Aldahir215 commented 6 months ago

This is what I got x86_64-linux-gnu-capsule-capture-libs: warning: Dependencies of libnvidia-pkcs11.so.550.67 not found, ignoring: Missing dependencies: Could not find "libcrypto.so.1.1" in LD_LIBRARY_PATH (unset), ld.so.cache, DT_RUNPATH or fallback /lib:/usr/lib steam-runtime-launcher-service[85]: W: The --socket option is deprecated. Prefer to use --session or --bus-name. /home/$USER/.var/app/com.valvesoftware.Steam/.local/share/Steam/steamapps/compatdata/22380/pfx

swjzielinski commented 6 months ago

And do you see the windows offering to clean the prefix, or does the script crash beforehand?

Aldahir215 commented 6 months ago

If you are referring to the command you told me to put: there was no window popping up and my terminal went on as normal. If you are referring when you try to install MO2 and it tells you to change force compatibility to Proton 8 and follow the steps before hitting continue. A window never appeared to clean the prefix.

If it is neither could you expand on what you meant by "see the windows offering to clean the prefix"?

NetariW0lf commented 6 months ago

okay i'm totally lost here what do i do to make a wine prefix also i'm getting this Failed to load module "xapp-gtk3-module"

swjzielinski commented 6 months ago

If you are referring to the command you told me to put: there was no window popping up and my terminal went on as normal. If you are referring when you try to install MO2 and it tells you to change force compatibility to Proton 8 and follow the steps before hitting continue. A window never appeared to clean the prefix.

If it is neither could you expand on what you meant by "see the windows offering to clean the prefix"?

Sorry, I meant the installer. You're saying this windows shows up:

Now you need to create a clean prefix:

1. On Steam: right click the game > Properties > Compatibility
2. Check the option "Force the use of a specific Steam Play compatibility tool"
3. Select the Proton version you would like to use
    * Proton 8.0 is the currently supported and recommended version
4. Launch the game and wait for Steam to finish its setup
5. Close the game. It must remain stopped through the entire install process

but this window doesn't?

It is highly recommended to clean your current game prefix
before starting the installation process.

Would you like to archive your current game prefix and
create a new one?
swjzielinski commented 6 months ago

okay i'm totally lost here what do i do to make a wine prefix also i'm getting this Failed to load module "xapp-gtk3-module"

Playing a Windows game through Steam will create a Wine prefix in the Steam library.

Aldahir215 commented 6 months ago

If you are referring to the command you told me to put: there was no window popping up and my terminal went on as normal. If you are referring when you try to install MO2 and it tells you to change force compatibility to Proton 8 and follow the steps before hitting continue. A window never appeared to clean the prefix. If it is neither could you expand on what you meant by "see the windows offering to clean the prefix"?

Sorry, I meant the installer. You're saying this windows shows up:

Now you need to create a clean prefix:

1. On Steam: right click the game > Properties > Compatibility
2. Check the option "Force the use of a specific Steam Play compatibility tool"
3. Select the Proton version you would like to use
  * Proton 8.0 is the currently supported and recommended version
4. Launch the game and wait for Steam to finish its setup
5. Close the game. It must remain stopped through the entire install process

but this window doesn't?

It is highly recommended to clean your current game prefix
before starting the installation process.

Would you like to archive your current game prefix and
create a new one?

Yup that one does not pop up for me.

Aldahir215 commented 6 months ago

okay i'm totally lost here what do i do to make a wine prefix also i'm getting this Failed to load module "xapp-gtk3-module"

Playing a Windows game through Steam will create a Wine prefix in the Steam library.

Don't they also need to make sure they has Proton enabled for the prefix to be made?

swjzielinski commented 6 months ago

Yup that one does not pop up for me.

That's interesting, since the second window is supposed to open before the first one. So first you are offered to clean the prefix, and then the prefix would have to be regenerated; but you're only getting the regeneration part.

Don't they also need to make sure they has Proton enabled for the prefix to be made?

Without Proton/Wine, the game will just not work. You just need to open the game once to create a prefix for it.

ChanceNCounter commented 6 months ago

I'd just like to call contributors' attention to this closed issue, which people (including me) have been periodically bumping for years. The developer appears to have insta-closed it on the assumption that the OP was a moron. Thanks, developer!

In reality, at least 4 people are experiencing this in situations where the game itself is completely functional. I sat through the first 5 minutes of FO3: GOTY just to be certain. It's MO2 that can't see the prefix. Works for FO4, doesn't work for FO3: GOTY. I'd be happy to help debug, but every time somebody reports this issue, the response they get is "read the error."

swjzielinski commented 6 months ago

I think the problem is that the script can't find the prefix location. (wow, no way) The function "load_prefix_locations" from step/clean_game_prefix.sh returns an empty string. However, I've asked one person in this issue to run the same command as the function does, and it did produce the expected result.

@ChanceNCounter are both FO4 and FO3 GOTY in the same library / on the same drive?

rockerbacon commented 6 months ago

That's interesting, since the second window is supposed to open before the first one. So first you are offered to clean the prefix, and then the prefix would have to be regenerated; but you're only getting the regeneration part.

That’s normal, the prefix archival prompt only appears if a prefix exists prior to installation. If Protontricks can’t find a prefix, the user won’t get the prompt.

/home/$USER/.var/app/com.valvesoftware.Steam/.local/share/Steam/steamapps/compatdata/22380/pfx

@Aldahir215 Have you edited the output or are you literally getting “$USER” in the path?

rockerbacon commented 6 months ago

I’ll ask affected users to provide logs for installer version 4.6.2. It doesn’t include any fixes per se, but it has additional logs that should help the investigation.

Aldahir215 commented 6 months ago

@rockerbacon I added the $USER myself.

Aldahir215 commented 6 months ago

I’ll ask affected users to provide logs for installer version 4.6.2. It doesn’t include any fixes per se, but it has additional logs that should help the investigation.

I would like to offer any assistance. I am a novice to linux but I would like to contribute to figuring this out.

rockerbacon commented 6 months ago

@Aldahir215 I just need install logs for the latest version of the installer.

Aldahir215 commented 6 months ago

@Aldahir215 I just need install logs for the latest version of the installer.

How can I provide the logs? I am unsure how to do that.

UPDATE: I installed winetricks, via "sudo apt install winetricks" and now it seems to work.

At first it wouldn't launch but then I realized that since I use the flatpak version of steam I had to use flatseal and give steam access to the home directory.

swjzielinski commented 6 months ago

Just checked the script, it's only checking for protontricks and assumes that their dependencies are met. Apparently it's possible to install protontricks without its dependencies, thus giving the illusion of everything being present when it's not. Maybe the script could also check for winetricks?

rockerbacon commented 6 months ago

Just checked the script, it's only checking for protontricks and assumes that their dependencies are met. Apparently it's possible to install protontricks without its dependencies, thus giving the illusion of everything being present when it's not. Maybe the script could also check for winetricks?

It doesn't check Winetricks because it downloads it from source. That also can't be the issue because the user is using Flatpak, meaning no external dependencies.

rockerbacon commented 6 months ago

How can I provide the logs? I am unsure how to do that.

The terminal prints out all the logs, just copy the text and send it here.

Aldahir215 commented 6 months ago

How can I provide the logs? I am unsure how to do that.

The terminal prints out all the logs, just copy the text and send it here.

Here are the logs without winetricks: INFO: all dependencies met INFO: selected game 'newvegas' INFO: steam not found in '' INFO: found Steam in '/home/altair/.var/app/com.valvesoftware.Steam/.local/share/Steam' INFO: game found in '/home/altair/.var/app/com.valvesoftware.Steam/.local/share/Steam' INFO: user confirmed prefix setup ERROR: no prefix found

This is when I reinstalled winetricks INFO: all dependencies met INFO: selected game 'newvegas' INFO: steam not found in '' INFO: found Steam in '/home/altair/.var/app/com.valvesoftware.Steam/.local/share/Steam' INFO: game found in '/home/altair/.var/app/com.valvesoftware.Steam/.local/share/Steam' INFO: user confirmed prefix setup

I was able to continue...

I already had it setup so I hope these logs are enough. I also launched the game when instructed from the window, meaning I launched the game in both conditions.

BlindingBird commented 6 months ago

Just my two cents. I had this issue where it could not find the prefix. I solved it by deleting the prefix and validating files through steam to create a clean prefix. After that the MO2 installer was able to find the prefix

frenchtooch commented 4 months ago

I can verify that find-library-for-appid.sh is not fetching the correct prefix id. For New Vegas its close but it's incorrect. 22490 as opposed to 22380. This is from fresh steam new vegas install and following directions explicitly. Im on ubuntu 24.04 and using flatpak protontricks. I even explicitly defined the prefix in script within appid variable using the correct id and it still failed.

swjzielinski commented 4 months ago

22490 as opposed to 22380

According to the files in the gameinfo folder, 22380 is for the global FNV release and 22490 is for the "en,pl,cz,ru" version. Are you sure you have and select the correct game?

frenchtooch commented 4 months ago

22490 as opposed to 22380

According to the files in the gameinfo folder, 22380 is for the global FNV release and 22490 is for the "en,pl,cz,ru" version. Are you sure you have and select the correct game?

22380 is what I have FNV En user. I checked. All of my folders reference 22380.

swjzielinski commented 4 months ago

Can you check what ID does protontricks detect it as? try running the command

flatpak run 'com.github.Matoking.protontricks' -c 'echo $WINEPREFIX' 22380

If it says the directory, where the game is located, then it is detected correctly.