Posted November 09, 2020
Hoo boy, this is a fun one to get working in Ubuntu 20 (and variants).
First, go to the game install location (in my case, "~/GOG Games/BLACKHOLE"), look for "deps.txt" and install any that you are missing. Additionally, you'll also need "libidn11-dev:i386" and any dependencies.
The fun isn't over yet, though! We also need old versions of libcurl and libssl, neither of which are available in the current repositories.
You can get libcurl3 here: https://packages.ubuntu.com/xenial/libcurl3
And libssl1.0.0 here: https://packages.ubuntu.com/bionic/libssl1.0.0
Download the i386 version of each, even if you're using a 64-bit OS (if you're using one of the "goofy" architectures, you're on your own).
DO NOT INSTALL THESE DEB PACKAGES! We are going to extract the needed files and "install" them locally to the game so they aren't interfering with anything else on your system.
Open each of the deb packages with whatever your favorite archive/zip handling program is. Each one has the same structure, so I'm only going to go through one, follow the same directions for the other. Okay, so once you've opened the deb package, you should see "control.tar.gz", "data.tar.xz", and "debian-binary". Open up or extract "data.tar.xz". Within that, you'll have a "usr" directory. Open that one, then the "lib" directory, then the "i386-linux-gnu" directory. The files in here are the ones we want. Extract or copy them somewhere you'll remember.
Once you've got your loose files (from both deb packages!), I strongly suggest putting them in the game's directory to make the last step easier. For this, go to the base install for it, again in my case this is "~/GOG Games/BLACKHOLE". Once there, open the "game" directory. Create a new directory here, I'd suggest calling it "lib". Put those loose files you extracted earlier here. (There should be five: one that starts with "libcrypto", three that start with "libcurl", and one that starts with "libssl".)
Finally, go back up to the "BLACKHOLE" directory. We're going to edit the startup script for the game to tell it where to find those files. Open "start.sh" with your favorite text editor. Add the following line somewhere in the file before the "run_game() {" line. I suggest doing it as the last line in the "# Game info" area, underneath the "VERSION_DEV" line.
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:./lib"
Replace the "lib" in that line with whatever you called the directory you created earlier, if you decided to not follow what I was suggesting for some reason. Save the file and try to run the game. Hopefully, everything will work now!
First, go to the game install location (in my case, "~/GOG Games/BLACKHOLE"), look for "deps.txt" and install any that you are missing. Additionally, you'll also need "libidn11-dev:i386" and any dependencies.
The fun isn't over yet, though! We also need old versions of libcurl and libssl, neither of which are available in the current repositories.
You can get libcurl3 here: https://packages.ubuntu.com/xenial/libcurl3
And libssl1.0.0 here: https://packages.ubuntu.com/bionic/libssl1.0.0
Download the i386 version of each, even if you're using a 64-bit OS (if you're using one of the "goofy" architectures, you're on your own).
DO NOT INSTALL THESE DEB PACKAGES! We are going to extract the needed files and "install" them locally to the game so they aren't interfering with anything else on your system.
Open each of the deb packages with whatever your favorite archive/zip handling program is. Each one has the same structure, so I'm only going to go through one, follow the same directions for the other. Okay, so once you've opened the deb package, you should see "control.tar.gz", "data.tar.xz", and "debian-binary". Open up or extract "data.tar.xz". Within that, you'll have a "usr" directory. Open that one, then the "lib" directory, then the "i386-linux-gnu" directory. The files in here are the ones we want. Extract or copy them somewhere you'll remember.
Once you've got your loose files (from both deb packages!), I strongly suggest putting them in the game's directory to make the last step easier. For this, go to the base install for it, again in my case this is "~/GOG Games/BLACKHOLE". Once there, open the "game" directory. Create a new directory here, I'd suggest calling it "lib". Put those loose files you extracted earlier here. (There should be five: one that starts with "libcrypto", three that start with "libcurl", and one that starts with "libssl".)
Finally, go back up to the "BLACKHOLE" directory. We're going to edit the startup script for the game to tell it where to find those files. Open "start.sh" with your favorite text editor. Add the following line somewhere in the file before the "run_game() {" line. I suggest doing it as the last line in the "# Game info" area, underneath the "VERSION_DEV" line.
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:./lib"
Replace the "lib" in that line with whatever you called the directory you created earlier, if you decided to not follow what I was suggesting for some reason. Save the file and try to run the game. Hopefully, everything will work now!
Post edited November 09, 2020 by Nesoo