Join GitHub today
GitHub is home to over 20 million developers working together to host and review code, manage projects, and build software together.
Can I use exodus to run Dying Light on Arch Linux? #29
Comments
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
Show comment Hide comment
sangaline
Mar 2, 2018
Owner
Unfortunately, the answer to that is currently no. You can check out #18 for a discussion on the possibility of bundling games, but there are two main issues:
- Games tend to have a lot of programmatically loaded dependencies, both in terms of libraries and media assets. There's currently no support for including these with exodus, but with v2 the situation will greatly improve.
- The OpenGL libraries are graphics driver dependent. This makes it a no-go for distributing games this way, but it might not be a blocker if you're just doing this on one system.
When version 2 comes out, there's a possibly that you might be able to get this to work if you're willing to run the game using an Ubuntu live-usb to determine and bundle the dynamic dependencies. Does the Ubuntu installation use a deb file or is it through Steam?
|
Unfortunately, the answer to that is currently no. You can check out #18 for a discussion on the possibility of bundling games, but there are two main issues:
When version 2 comes out, there's a possibly that you might be able to get this to work if you're willing to run the game using an Ubuntu live-usb to determine and bundle the dynamic dependencies. Does the Ubuntu installation use a deb file or is it through Steam? |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
Show comment Hide comment
devland
Mar 2, 2018
Does the Ubuntu installation use a deb file or is it through Steam?
I can start the game from the console as long as Steam is running.
Bundling mesa or other drivers isn't required since this is not a mesa issue. It runs with newer versions of mesa on Ubuntu.
Also, the media assets are already in the game folder. I can move them to Arch easily. Getting the executable to run is the main problem.
How would I go about using exodus to try and bundle the dynamically loaded dependencies?
The exodus documentation seems to mention exporting everything in a tarball but I couldn't get it to bundle the dependencies.
I'll install Linux Mint again and post the tarball I get as output.
Thanks for your time. :)
devland
commented
Mar 2, 2018
I can start the game from the console as long as Steam is running. Bundling mesa or other drivers isn't required since this is not a mesa issue. It runs with newer versions of mesa on Ubuntu. Also, the media assets are already in the game folder. I can move them to Arch easily. Getting the executable to run is the main problem. How would I go about using exodus to try and bundle the dynamically loaded dependencies? The exodus documentation seems to mention exporting everything in a tarball but I couldn't get it to bundle the dependencies. I'll install Linux Mint again and post the tarball I get as output. Thanks for your time. :) |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
Show comment Hide comment
sangaline
Mar 2, 2018
Owner
Bundling mesa or other drivers isn't required since this is not a mesa issue. It runs with newer versions of mesa on Ubuntu.
When you mention that the logs suggest glibc errors, I think there's a good chance that the binary is incompatible with your system glibc. This would mean that you actually do need to transport all of the library dependencies, including libGLX_indirect.so.0 which probably points to libGLX_mesa.so.0.
How would I go about using exodus to try and bundle the dynamically loaded dependencies?
I'm working on adding support for this to v2 now, which I expect to be out within the next week or so. If you want to check back then, I would be happy to help you with the steps for bundling the additional dependencies. I'm very curious to see if you can get it to work :-).
When you mention that the logs suggest glibc errors, I think there's a good chance that the binary is incompatible with your system glibc. This would mean that you actually do need to transport all of the library dependencies, including
I'm working on adding support for this to v2 now, which I expect to be out within the next week or so. If you want to check back then, I would be happy to help you with the steps for bundling the additional dependencies. I'm very curious to see if you can get it to work :-). |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
Show comment Hide comment
devland
Mar 2, 2018
I'm working on adding support for this to v2 now, which I expect to be out within the next week or so. If you want to check back then, I would be happy to help you with the steps for bundling the additional dependencies. I'm very curious to see if you can get it to work :-).
That's very good to hear. Looking forward to it.
Also, I'm pretty sure that, if it works, it will make a lot of people happy. :D
devland
commented
Mar 2, 2018
That's very good to hear. Looking forward to it. Also, I'm pretty sure that, if it works, it will make a lot of people happy. :D |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
Show comment Hide comment
sangaline
Mar 5, 2018
Owner
@devland The version 2 beta is at a point now where it might be worth giving it a shot.
To install the beta version in Mint, you can run the following.
curl https://294-119092220-gh.circle-artifacts.com/0/exodus-x64.sh | bash
export PATH="~/.exodus/bin:${PATH}"Then there are two new features that you'll need to include dependencies: the --add flag and the parsing of strace outputs to find programmatically loaded resources. You'll want to run a command along the lines of this.
strace -f /usr/bin/dying-light 2>&1 | exodus --add /usr/share/dying-light /usr/bin/dying-lightThe initial strace command will launch the game and the bundle won't get created until you quit it. I recommend actually going to the point of game play before exiting. Exodus will parse the strace output and include any files that are accessed in the bundle. I wouldn't rely on this for the actual game resources, but it should hopefully grab the dlopened libraries. Use the --add flag for the other stuff, it's recursive and can be used multiple times in one command.
This is all very experimental at this stage, but I'm quite curious to hear how it works out for you!
|
@devland The version 2 beta is at a point now where it might be worth giving it a shot. To install the beta version in Mint, you can run the following. curl https://294-119092220-gh.circle-artifacts.com/0/exodus-x64.sh | bash
export PATH="~/.exodus/bin:${PATH}"Then there are two new features that you'll need to include dependencies: the strace -f /usr/bin/dying-light 2>&1 | exodus --add /usr/share/dying-light /usr/bin/dying-lightThe initial This is all very experimental at this stage, but I'm quite curious to hear how it works out for you! |
|
@devland Quick update: version 2 has been released, so you can install with |
|
@devland I'm going to close this due to inactivity, but will reopen it if you decide you want to give it a try at some point. |
devland commentedMar 2, 2018
Hello.
Dying Light is a game that currently only works on Ubuntu and its derivatives. I'm trying to get it to work on Arch Linux. The game logs suggest an issue with glibc.
Can I use exodus in this scenario?
Any tips would be appreciated. :)