McArcady/lnp-forge

Cannot launch Dwarf Fortress on Arch

Closed this issue · 8 comments

I installed the Arch package version and I am able to get the pack to run as well as the various utilities; however, Dwarf Fortress itself immediately exits when I click play. When I exit the pack, the following is output on the terminal.

Starting LinuxDwarfPack
- configuration and game saves are stored in /home/***/.local/share/linux-dwarf-pack
- feedback or issues? see http://www.bay12forums.com/smf/index.php?topic=157712
- created with lnp-forge: https://github.com/McArcady/lnp-forge

Creating overlay of /home/***/.local/share/linux-dwarf-pack and /opt/linux-dwarf-pack in /tmp/lnp-BdlXDZ...
INFO: Read installed graphics (Obsidian) from log
child exited with status 127
child exited with status 127
child exited with status 127
/tmp/lnp-BdlXDZ unmounted.

Also, when running the terminal test, the following error is observed

['Traceback (most recent call last):\n', '  File "/tmp/lnp-FfXSIW/./launch.py", line 12, in <module>\n    lnp.PyLNP()\n', '  File "/tmp/lnp-FfXSIW/core/lnp.py", line 113, in __init__\n    self.initialize_program()\n', '  File "/tmp/lnp-FfXSIW/core/lnp.py", line 193, in initialize_program\n    sys.exit(terminal.terminal_test_parent(\n', 'SystemExit: 0\n']

I have tried both xterm and st as terminals. Any idea what could be causing the issue?

Could you try this:

  • edit /opt/linux-dwarf-pack/startlnp.sh
  • edit the last line like this (notice the "-d -d"):
    ./launch.py -d -d || echo "Failed to start PyLNP" >&2
  • start again from a terminal:
    $ /opt/linux-dwarf-pack/linux-dwarf-pack.sh
Starting LinuxDwarfPack
- configuration and game saves are stored in /home/xxx/.local/share/linux-dwarf-pack
- feedback or issues? see http://www.bay12forums.com/smf/index.php?topic=157712
- created with lnp-forge: https://github.com/McArcady/lnp-forge

Creating overlay of /home/xxx/.local/share/linux-dwarf-pack and /opt/linux-dwarf-pack in /tmp/lnp-eRF04F...
DEBUG: Namespace(debug=2, raw_lint=False, df_folder=None, df_executable=None, release_prep=False, terminal_test_parent=None, terminal_test_child=None)
DEBUG: dfhack_PyLNP.init not found.
DEBUG: onLoad_PyLNP.init not found.
DEBUG: onMapLoad_PyLNP.init not found.
DEBUG: Nothing installed in nonexistent file ./df_47_05_linux/data/init/embark_profiles.txt
INFO: Read installed graphics (Obsidian) from log
DEBUG: dfhack_PyLNP.init not found.
DEBUG: onLoad_PyLNP.init not found.
DEBUG: onMapLoad_PyLNP.init not found.

It looks like there are missing files. I tried reinstalling to see if something got deleted by accident with no luck

Does the log stop here? What does it become when you click "start DF"?

Sorry, I thought I had clicked the start button for the above output. Clicking the start button yields the following...

Starting LinuxDwarfPack
- configuration and game saves are stored in /home/xxx.local/share/linux-dwarf-pack
- feedback or issues? see http://www.bay12forums.com/smf/index.php?topic=157712
- created with lnp-forge: https://github.com/McArcady/lnp-forge

Creating overlay of /home/xxx/.local/share/linux-dwarf-pack and /opt/linux-dwarf-pack in /tmp/lnp-76SaZj...
DEBUG: Namespace(debug=2, raw_lint=False, df_folder=None, df_executable=None, release_prep=False, terminal_test_parent=None, terminal_test_child=None)
DEBUG: dfhack_PyLNP.init not found.
DEBUG: onLoad_PyLNP.init not found.
DEBUG: onMapLoad_PyLNP.init not found.
DEBUG: Nothing installed in nonexistent file ./df_47_05_linux/data/init/embark_profiles.txt
INFO: Read installed graphics (Obsidian) from log
DEBUG: dfhack_PyLNP.init not found.
DEBUG: onLoad_PyLNP.init not found.
DEBUG: onMapLoad_PyLNP.init not found.
DEBUG: Preparing terminal command for command line ['/tmp/lnp-76SaZj/df_47_05_linux/dfhack']
DEBUG: Checking for terminal KDE
DEBUG: Checking for terminal GNOME/Cinnamon
DEBUG: Checking for terminal Xfce
DEBUG: Checking for terminal LXDE
DEBUG: Checking for terminal Mate
DEBUG: Checking for terminal i3
DEBUG: Checking for terminal (u)rxvt
DEBUG: Checking for terminal xterm
DEBUG: Checking for terminal Custom command
DEBUG: Found terminal Custom command
DEBUG: Checking for terminal KDE
DEBUG: Checking for terminal GNOME/Cinnamon
DEBUG: Checking for terminal Xfce
DEBUG: Checking for terminal LXDE
DEBUG: Checking for terminal Mate
DEBUG: Checking for terminal i3
DEBUG: Checking for terminal (u)rxvt
DEBUG: Checking for terminal xterm
DEBUG: Checking for terminal Custom command
DEBUG: Found terminal Custom command
DEBUG: Using configured terminal: ['st'], command line Custom command
child exited with status 127
/tmp/lnp-76SaZj unmounted.

I have tried with both st and xterm with the same result. Dwarf fortress, independent of the launcher, works on both.

I tried running dfhack on its own and ran into a missing library error which I solved by installing GTK2. Apparently GTK3 is missing a required library.

And what was the library?
We could declare it as a dependency of the package

libgtk-x11-2.0.so.0

Also, thanks for the help with fixing this