andrewmd5 / orion

a command-line game launcher for the Game Porting Toolkit
130 stars 7 forks source link

Automated Steam install fails #10

Closed jimjam-slam closed 1 year ago

jimjam-slam commented 1 year ago

Hi there! Orion looks fantastic!

I've installed the Sonoma beta and installed the Game Porting Toolkit.

When I run Orion, it first asks for my x64 homebrew path, then my Wine prefix (which I've set to ~/macgmaing.

It then asks if I'd like to install Steam. if I opt in, it fails, saying System.IO.DirectoryNotFoundException: Could not find a part of the path '/Users/rensa/drive_c/SteamSetup.exe'.

I'm surprised to see this, as I expected it would look in /Users/rensa/macgaming, not /Users/rensa directly. I can confirm I've set up a prefix in ~/macgaming, and there is a populated drive_c folder in there (although it doesn't have a SteamSetup.exe—do I need to download that myself?).

Here's the full output:

~ orion
                 _                 
   ___    _ __  (_)   ___    _ __  
  / _ \  | '__| | |  / _ \  | '_ \ 
 | (_) | | |    | | | (_) | | | | |
  \___/  |_|    |_|  \___/  |_| |_|

No config file found. Would you like to create one now? [y/n] (y): y
Enter the path to your x86-64 Homebrew binary: (/usr/local/bin/brew): /usr/local/Homebrew/bin/brew
Enter the path to your Wine prefix: /Users/rensa/macgaming
Checking for dependencies...
All dependencies are installed.
Checking for updates...
No updates are available.
Steam is not installed. Would you like to install it? [y/n] (y): y
An error occurred
System.IO.DirectoryNotFoundException: Could not find a part of the path 
'/Users/rensa/drive_c/SteamSetup.exe'.
  at void Interop.ThrowExceptionForIoErrno(ErrorInfo errorInfo, string path, bool isDirError)  
  at SafeFileHandle Microsoft.Win32.SafeHandles.SafeFileHandle.Open(string path, OpenFlags     
     flags, int mode, Func<ErrorInfo, OpenFlags, string, Exception> createOpenException)       
  at SafeFileHandle Microsoft.Win32.SafeHandles.SafeFileHandle.Open(string fullPath, FileMode  
     mode, FileAccess access, FileShare share, FileOptions options, long preallocationSize,    
     UnixFileMode openPermissions, out long fileLength, out UnixFileMode filePermissions,      
     Func<ErrorInfo, OpenFlags, string, Exception> createOpenException)                        
  at System.IO.Strategies.OSFileStreamStrategy..ctor(string path, FileMode mode, FileAccess    
     access, FileShare share, FileOptions options, long preallocationSize, UnixFileMode?       
     unixCreateMode)                                                                           
  at System.IO.FileStream..ctor(string path, FileMode mode, FileAccess access, FileShare share,
     int bufferSize, FileOptions options, long preallocationSize)                              
  at FileStream System.IO.File.Create(string path)                                             
  at async Task Ptk.Steam.Install(CancellationToken cancellationToken)                         
  at async Task Program.<Main>$(string[] args)
andrewmd5 commented 1 year ago

This is on me, it looks like I didn't properly build out the path in the download logic - will push a fix.

jimjam-slam commented 1 year ago

Thanks a bunch for taking a look—I'll keep an eye out!

andrewmd5 commented 1 year ago

fixed in the latest release; confirm when you get a chance.

jimjam-slam commented 1 year ago

Tested! It's correctly installing Steam now :blush:

I am having a separate problem—namely that although Steam appears to launch in the Dock (it has a Steam icon but says 'wine64-preloader') when I select it in orion, I'm not seeing any actual window open.

No config file found. Would you like to create one now? [y/n] (y): y
Enter the path to your x86-64 Homebrew binary: (/usr/local/bin/brew): /usr/local/Homebrew/bin/brew
Enter the path to your Wine prefix: ~/macgaming
Checking for dependencies...
All dependencies are installed.
Checking for updates...
No updates are available.
Steam is not installed. Would you like to install it? [y/n] (y): y

…                                                                         

Steam installed!
Enable HUD? [y/n] (y): y
Enable esync? [y/n] (n): y
Killing previous instances of Wine processes...
Launching Steam...
Press Command+C to exit.
^CExiting...

Should I open a separate issue for this?

jimjam-slam commented 1 year ago

(I should note that I did see the Steam update screen downloading a Steam update first. It just seems to be the main Steam screen that isn't appearing.)

andrewmd5 commented 1 year ago

I think this may be related to the new Steam UI which is unfortunate timing. I’ll debug.

andrewmd5 commented 1 year ago

fixed in v0.0.7

https://github.com/andrewmd5/orion/releases/tag/0.0.7

jimjam-slam commented 1 year ago

Thanks for continuing to work n this! Unfortunately, I'm still not able to boot Steam on 0.0.7.

Screenshot 2023-06-22 at 15 38 12

I also tried wiping the virtual C: drive and going through the process again, but I get the same result.

andrewmd5 commented 1 year ago

Thanks for continuing to work n this! Unfortunately, I'm still not able to boot Steam on 0.0.7.

Screenshot 2023-06-22 at 15 38 12

I also tried wiping the virtual C: drive and going through the process again, but I get the same result.

Does Steam work if you install it outside of the automated way orion does it?

jimjam-slam commented 1 year ago

I'm not 100% sure how to launch something with the toolkit myself. I'm trying the following:

/usr/local/Cellar/game-porting-toolkit/1.0/lib/gameportingtoolkit ~/macgaming 'C:\Program Files (x86)\Steam\steam.exe'

Error: No available formula with the name "game-porting-toolkit".

One possible complication here is that I am running x64 homebrew concurrently (using the alias brow) with the native arm64 version of homebrew. I installed the game-porting-toolkit using x64 homebrew.

I did also supply the x64 homebrew path to orion originally (it hasn't re-prompted since I updated, so I assume that path is stored elsewhere).

jimjam-slam commented 1 year ago

Oh, scratch that! it looks like it's working :blush:

image

It could be because there was another Steam update—or it could be that I was overly cautious and never tried to launch in retina mode 😅

Thanks for your patience and for a great tool!