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

(noob-ish Fedora issue) Linux bin won't run without some fenagling with Go dev env prerequisites. #187

Closed
quix-cafe opened this issue Feb 7, 2024 · 5 comments

Comments

@quix-cafe
Copy link

Basically a mirror of projectdiscovery/subfinder#1055 -- I'm a Pioneer, not a Programmer!

But I only got the "SatisfactoryModManager-Linux" bin to run on my vanilla Fedora 39 box only through some hours of fenagling with setting up dependencies in Go due to an issue with "aead".

I know it's an alpha release but there could be a bit of documentation for getting it moving on Linux boxes, as it's (guessing), no longer an AppImage? Or maybe it's easy on non-Fedora distros.

Newb issues, but I just wanted to play some modded Satisfactory, so maybe this is helpful or maybe everybody's rolling their eyes at me lol.

Much love y'all!

@quix-cafe
Copy link
Author

To clarify, I now have it running, but can't reasonably provide "how" as I was basically throwing spaghetti at the walls.

AND IN THAT SENSE, a beautiful update, working very well, and I'm excited to keep-on-a-goin with this install :)

@mircearoata
Copy link
Member

Are you sure it's the same issue as the one you linked? That seems to be specific to running go install <package>, which is not how SMM is meant to be installed. By the time the app is compiled, there is nothing related to imports that could error, it's all just native code.

As far as I know (haven't looked too much into it), the only runtime dependency of SMM (that is not common with most other apps) is WebKitGTK.

I can try looking into generating an AppImage once again, but it previously was just how electron-builder packages the app, given it needs its chromium. Wails does not provide this currently (it will in Wails v3), so I'll have to look into the AppImage creation tools, and which dependency libraries should and shouldn't be in an AppImage.

@quix-cafe
Copy link
Author

I'm not sure that the issue is specific to the one I linked -- only that my kerfuffling through those broken dependencies while working on compiling from source is what allowed the binary download to go from not executing to executing -- so my hunch is that having a working Golang development environment -- over the hurdles of the broken 'aead' dependency -- is necessary for the binary to execute.

or not? it has no file extension, and all the documentation is about compiling from source. trying to execute it simply kept posting the 'aead' dependency errors (or nothing) until I solved that. so my only 'qualm', or moreso suggestion for easing adoption by other Fedora users, is a bit more documentation for users going from a non-dev environment.

I'll likely do a fresh install on my other box and try the whole rigmarole again soon -- and try to get some debug info to you if relevant.

This issue still feels 'active' though without at least a note on how to use the Linux binary -- am I missing something simple?

@mircearoata
Copy link
Member

All that you should have to do to run the release executable is chmod +x <filename>, since the file does not have the executable permission flag by default, given it's a download, and that should be it. The lack of extension is standard for Linux executables, since deciding whether a file is executable is based on the executable permission flag, unlike Windows which expects certain extensions or opens the associated app otherwise.

None of the go dev environment should be needed, go compiles to native executables, just like C/C++/Rust.

I tried to run SMM in a fresh Fedora 39 docker container (neither VirtualBox nor HyperV worked for me for some reason, probably because of Docker Desktop), and besides not having a display, causing GTK to error, all the app initialization worked correctly, so I'd appreciate the output/log that you get when trying to run it

[root@06d303777f18 /]# dnf up
[root@06d303777f18 /]# dnf install wget
[root@06d303777f18 /]# wget https://github.com/satisfactorymodding/SatisfactoryModManager/releases/download/v3.0.0-beta.1/SatisfactoryModManager-Linux
[root@06d303777f18 /]# chmod +x ./SatisfactoryModManager-Linux
[root@06d303777f18 /]# dnf install webkit2gtk4.0
[root@06d303777f18 /]# ./SatisfactoryModManager-Linux
2024-02-08T09:11:14Z INF cli/profiles.go:178 saving profiles path=/root/.local/share/ficsit/profiles.json
2024-02-08T09:11:14Z INF cli/installations.go:102 saving installations path=/root/.local/share/ficsit/installations.json
panic: failed to init GTK
<stack trace of this error>
[root@06d303777f18 /]#

@mircearoata
Copy link
Member

Closing due to inactivity. There is now also an AppImage available, and had reports on Discord of both the standalone and AppImage version working correctly on Fedora 40

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

No branches or pull requests

2 participants