Using Firestorm in 64-bit Ubuntu
NOTE: The steps here have not been rigorously tested, and therefore might not work for you.
Do not proceed with any package installation listed on this page if it will remove any packages, without a clear understanding of the potential impact to your system.
The steps here apply to Ubuntu 17.10 and its variants (e.g. Xubuntu) and derivatives, unless otherwise indicated.
Canonical did not provide support for gstreamer0.10 in this release, which should be assumed as deprecation of gstreamer0.10, and Firestorm is not yet able to use gstreamer1.0. In order to hear and see media and to use voice, you must install gstreamer0.10.
Add LTS repositories
The easiest way to manage this is to create a separate list for the LTS (xenial) repositories.
Use your favorite text editor to create /etc/apt/sources.list.d/xenial.list (you must be root when you do this)
Enter the following lines:
- xenial.list
# Added LTS repos
# Added LTS repos
deb http://archive.ubuntu.com/ubuntu xenial main universe multiverse
deb http://archive.ubuntu.com/ubuntu xenial-updates universe
deb http://security.ubuntu.com/ubuntu/ xenial-security universe multiverse
deb http://archive.canonical.com/ubuntu/ xenial partner
Save and close the file, then
sudo apt update
Install Needed 32-bit Libraries
Note that most 32-bit libraries cannot be installed on 64-bit Linux using Synaptic or the Software Center; use apt in a terminal instead.
Ensure 32-bit architecture support is enabled
sudo dpkg --add-architecture i386
sudo apt update
Install the base libraries
NOTE: These files can't be installed using Synaptic or Software Center.
libglu1-mesa:i386 | libgtk2.0-0:i386 | libidn11:i386 | libpangox-1.0-0:i386 | libpangoxft-1.0-0:i386 | libqtwebkit4:i386 |
sudo apt install libglu1-mesa:i386 libgtk2.0-0:i386 libidn11:i386 libpangox-1.0-0:i386 libpangoxft-1.0-0:i386 libqtwebkit4:i386
You may need to install additional plugins:
gstreamer0.10-pulseaudio:i386 | gstreamer0.10-plugins-base:i386 | gstreamer0.10-plugins-good:i386 | pepperflashplugin-nonfree |
sudo apt install gstreamer0.10-pulseaudio:i386 gstreamer0.10-plugins-base:i386 gstreamer0.10-plugins-good:i386 pepperflashplugin-nonfree
NOTE: one or more of these packages may attempt to remove their 64-bit counterpart. Consult your distribution's help documents and/or forums to see if there is a means of installing both.
Additionally, depending on your particular Linux and hardware setup, you may need to locate and install some additional packages:
esound-common | libao-common | libao4 | pulseaudio-esound-compat |
Additional libraries
If you find that you are running into problems running Firestorm, or are receiving a media-plugin-webkit error, Manwa Pastorelli recommends the following packages:
Install the following packages
libstdc++-4.8-pic:i386 | libapr1:i386 | libaprutil1:i386 | libatk1.0-0:i386 | libdb5.3:i386 | libfontconfig1:i386 | libfreetype6:i386 | libuuid1:i386 | libx11-6:i386 | libxinerama1:i386 | libxrender1:i386 |
Packages shown in red may attempt to remove other packages from your system, which may lead to system instability. Install these packages one at a time and observe any mention of packages to be removed.
Packages shown in green may be already installed as a result of installing one of the other packages listed on this page.
sudo apt install libstdc++-4.8-pic:i386
sudo apt install libapr1:i386 libaprutil1:i386
sudo apt install libatk1.0-0:i386 libdb5.3:i386 libfontconfig1:i386 libfreetype6:i386 libuuid1:i386 libx11-6:i386 libxinerama1:i386 libxrender1:i386
If you run across the media_plugin_cef failure message, installing these packages may help:
libnss3:i386 | libnspr4:i386 | libxtst6:i386 | libgconf-2-4:i386 | libxss1:i386 |
sudo apt install libnss3:i386 libnspr4:i386 libxtst6:i386 libgconf-2-4:i386 libxss1:i386
Install Firestorm
Regardless of the method you choose, rebooting at this point can ensure that all required 32-bit libraries are referenced, though this may not be necessary.
Grab the Release
cd ~/Downloads
mkdir Firestorm
tar xf Phoenix_Fire{tab to expand} -C Firestorm --strip-components=1
Try It Out
At this point, you can launch Firestorm from a terminal:
cd ~/Downloads/Firestorm
./firestorm
And watch the output, optionally copy it for analysis since not all of it made its way to the viewer log.
You can also create a desktop shortcut, either manually or by running this script in a terminal:
~/Downloads/Firestorm/etc/refresh_desktop_app_entry.sh
Troubleshooting
Crashing
If you crash continually, it will be helpful to get a backtrace, like so:
cd ~/Downloads/Firestorm
sed -i "/^#export .*gdb/ s/^#//" ./firestorm # This enables gnu debug
./firestorm
At the (gdb) prompt, type r to launch Firestorm. When Firestorm crashes, you should be back at a (gdb) prompt.
Type bt to get a backtrace. Copy everything from the terminal screen to a text file (there may be several pages, press Enter until you get the gdb prompt again).
Type q to exit gdb.
Create a Support Request on our Jira and attach the backtrace as well as crash logs. JIRA can guide you through the process.
NOTE: You can turn off debugging with:
sed -i "/^export .*gdb/ s/^export/#export/" ./firestorm
Streaming Audio
Log out of Firestorm.
cd ~/Downloads/Firestorm
sed -i "/^#export .*BAD_OPENAL/ s/^#//" ./firestorm
./firestorm
Now run Firestorm and try streaming audio. You may experience a delay in in-world sounds; if so, relogging might help.
Voice
Default Linux voice files may not properly connect as it may depend on obsolete audio libraries. As a workaround, install wine and use the included Win32 voice files:
sudo apt install wine
env WINEARCH=win32 winecfg
Launch Firestorm and log in, disable voice, then press Ctrl+Alt+Shift+S to open Debug Settings. Search for FSLinuxEnableWin32VoiceProxy, set that to TRUE, then close Debug Settings. For good measure, relog, then enable and test voice.
Contributors
Manwa Pastorelli
Jean Horten
ShortyObrien