Difference between revisions of "Installation on Linux"

From VCMI Project Wiki
Jump to: navigation, search
(Using vcmibuilder script)
(Ubuntu)
(75 intermediate revisions by 9 users not shown)
Line 1: Line 1:
VCMI requires data from original Heroes 3: Shadow of Death or Complete editions and from the WoG expansion pack. Data from native Linux version made by LOKI will not work.
+
VCMI requires data from original Heroes 3: Shadow of Death or Complete editions. Data from native Linux version made by LOKI will not work.
All links are for VCMI 0.9
 
 
= Binaries installation =
 
= Binaries installation =
== Debian-based distributions ==
+
== Ubuntu ==
Download and install package for your distribution. To install package along with all dependencies:
+
'''Latest stable build from PPA (recommended)'''
 +
 
 +
Up-to-date releases can be found in our PPA here: https://launchpad.net/~vcmi/+archive/ubuntu/ppa
 +
 
 +
To install VCMI from PPA use:
 
<pre>
 
<pre>
sudo dpkg -i downloaded_package.deb
+
sudo apt-add-repository ppa:vcmi/ppa
sudo apt-get -f install
+
sudo apt update
 +
sudo apt install vcmi
 
</pre>
 
</pre>
Note: First command most probably will result in errors - this is normal behavior, all of them should be fixed by apt-get
 
  
=== Packages ===
+
'''Unstable testing build from PPA'''
  
{|
+
We also provide latest, unstable builds mostly suitable for testing here: https://launchpad.net/~vcmi/+archive/ubuntu/vcmi-latest
|'''Ubuntu 12.10 quantal'''
 
|[http://download.vcmi.eu/vcmi_0.90~quantal1_i386.deb 32 bit]
 
|[http://download.vcmi.eu/vcmi_0.90~quantal1_amd64.deb 64 bit]
 
|-
 
|'''Ubuntu 12.04 precise'''
 
|[http://download.vcmi.eu/vcmi_0.90~precise1_i386.deb 32 bit]
 
|[http://download.vcmi.eu/vcmi_0.90~precise1_amd64.deb 64 bit]
 
|-
 
|'''Ubuntu 11.10 oneiric'''
 
|[http://download.vcmi.eu/vcmi_0.90~oneiric1_i386.deb 32 bit]
 
|[http://download.vcmi.eu/vcmi_0.90~oneiric1_amd64.deb 64 bit]
 
|-
 
|'''Debian Sid'''
 
|[http://download.vcmi.eu/vcmi_0.90~sid1_i386.deb 32 bit]
 
|[http://download.vcmi.eu/vcmi_0.90~sid1_amd64.deb 64 bit]
 
|-
 
|'''Debian Wheezy'''
 
|[http://download.vcmi.eu/vcmi_0.90~wheezy1_i386.deb 32 bit]
 
|[http://download.vcmi.eu/vcmi_0.90~wheezy1_amd64.deb 64 bit]
 
|}
 
  
=== Other Debian-based distributions ===
+
In order to install from this PPA use:
VCMI requires g++-4.5 and boost-1.46 which are unavailable on Debian Squeeze and Ubuntu 11.04 or lower.
+
<pre>
If you'll manage to install them you can compile VCMI from source code.
+
sudo add-apt-repository ppa:vcmi/vcmi-latest
 +
sudo apt update
 +
sudo apt install vcmi
 +
</pre>
  
Another (and probably more safe) option is to create chroot enviroment ([https://help.ubuntu.com/community/DebootstrapChroot how-to]). This will allow to install package from another distribution.
+
'''From Ubuntu repository'''
  
== RPM-based distributions ==
+
VCMI stable builds available in "multiverse" repository. Learn how to enable it in [https://help.ubuntu.com/community/Repositories/Ubuntu Ubuntu wiki].
Download and install package for your distribution. There are two ways to install package along with all dependencies:  
 
  
Option A) Double-click the package. A package management window should appear with instructions to guide you through the process.
+
Once enabled, you can install VCMI using Ubuntu Store or in terminal using following commands:
 
 
Option B) Open a terminal window, and type
 
 
<pre>
 
<pre>
sudo rpm -i package_location_and_name(e.g. vcmi-0.89-1.fc16.x86_64.rpm)
+
sudo apt update
 +
sudo apt install vcmi
 
</pre>
 
</pre>
=== Packages ===
 
  
{|
+
Note that version available in Ubuntu is outdated. Install via PPA is preferred.
|'''Fedora 17'''
 
|[http://download.vcmi.eu/vcmi-0.9-1.fc17.i686.rpm 32 bit]
 
|[http://download.vcmi.eu/vcmi-0.9-1.fc17.x86_64.rpm 64 bit]
 
|}
 
  
== Compiling from source ==
+
== Debian ==
For compiling from source see [https://vcmi.svn.sourceforge.net/svnroot/vcmi/trunk/README.linux README.linux] file.
 
You can get packaged source for current version [https://dl.dropbox.com/u/22372764/vcmi/packages/vcmi_0.90.tar.gz here]
 
  
= Preparing data =
+
Stable VCMI version is available in "contrib" repository. Learn how to enable it in [https://wiki.debian.org/SourcesList Debian wiki].
== Using vcmibuilder script ==
 
''' This method is not available in vcmi 0.90 '''
 
=== Preparation ===
 
  
To install Heroes 3 data using vcmibuilder script you need original game data which can be:
+
To install VCMI from repository:
* As one or two CD's or CD images
 
* In form of gog.com installer
 
* Directory with already installed game
 
Additionally you will need WoG and VCMI data files. They can be automatically downloaded by script or downloaded manually using these links:
 
* WoG package: (TODO)
 
* VCMI data files: http://download.vcmi.eu/core.zip
 
=== Running the script ===
 
Create temporary directory that will be used by script and go into it:
 
 
<pre>
 
<pre>
mkdir temp
+
sudo apt-get update
cd temp
+
sudo apt-get install vcmi
 
</pre>
 
</pre>
Run the script specifying location of data files. Run "vcmibuilder --help" to see all possible options or use one of [[#Examples|examples]] in section below.
+
<!-- DISABLED - SNAP PACKAGE IS OUTDATED
 +
== Snappy ==
 +
It's possible to install daily VCMI builds as distribution-agnostic Snap package:
  
Launch vcmiclient to determine data directory:
+
* Visit [https://snapcraft.io/ snapcraft.io] to learn how to get Snappy on your distribution.
 +
* Once it's running install latest VCMI build with:
 
<pre>
 
<pre>
vcmiclient -v
+
sudo snap install --edge vcmi
 
</pre>
 
</pre>
This command will display something similar to this:
+
* After you can run VCMI with following commands:
 
<pre>
 
<pre>
Starting...  
+
snap run vcmi.vcmilauncher
VCMI 0.90
+
snap run vcmi.vcmiclient
  data directory:    /usr/share/vcmi
+
snap run vcmi.vcmiserver
  library directory: /usr/lib/vcmi
 
  binary directory:  /usr/bin/vcmi
 
 
</pre>
 
</pre>
 
+
* Keep in mind that instead of '''$HOME/.local/share/vcmi/''' you must copy Heroes 3 assets into:
Copy resulting files into your vcmi data directory:
 
 
<pre>
 
<pre>
cp -RT vcmi /path/to/vcmi/data/directory
+
$HOME/snap/vcmi/current/.local/share/vcmi/
 
</pre>
 
</pre>
=== Examples ===
+
* To update to latest version:
1) Using gog.com installer and auto-downloading additional packages
 
 
<pre>
 
<pre>
vcmibuilder --gog /path/to/gog.com/executable --download
+
sudo snap refresh vcmi
 
</pre>
 
</pre>
2) Using original CD's and manually downloaded data packages
 
  
Note: if your installation comes with single CD you still need to specify both "cd1" and "cd2" keys, pointing at the same location
+
'''Warning:''' Snap builds are currently in experimental state.
<pre>
+
 
vcmibuilder --cd1 /first/cd --cd2 /second/cd --wog /wog/archive --vcmi /vcmi/arhive
+
Please give your feedback on forum: [https://forum.vcmi.eu/t/experimental-snap-packages-for-linux/4300 Experimental Snap packages for Linux].
</pre>
+
-->
3) Using preinstalled Heroes 3 and manually downloaded WoG package
+
== Flatpak (distribution-agnostic) ==
<pre>
+
Latest public release build can be installed via Flatpak.
vcmibuilder --data /path/to/heroes3/data --wog /path/to/wog/archive --download
+
 
</pre>
+
Depending on your distribution, you may need to install flatpak itself.
 +
You can find guide for your distribution here: https://www.flatpak.org/setup/
 +
 
 +
Once you have flatpak, you can install VCMI package which can be found here: https://flathub.org/apps/details/eu.vcmi.VCMI
  
== Manual installation ==
+
== Other distributions ==
The main idea of this step is to prepare all the data (sprites, sound files, maps, etc.) that VCMI needs to run and to put them into VCMI's "'''data directory'''" which is where VCMI expects to find them. The '''VCMI data package''' provides some of these data files. The rest come from the original H3 game and from the WoG expansion pack. All 3 need to be merged and placed into VCMI's data directory and this step explains how to do this.
+
For other distributions, VCMI can be installed from 3rd-party repositories listed below. <br/>
 +
Note that these repositories are not supported by vcmi team and may not be up to date.
 +
* Archlinux [https://aur.archlinux.org/packages/vcmi/ vcmi] [https://aur.archlinux.org/packages/vcmi-git/ vcmi-git]
 +
* openSUSE [https://software.opensuse.org/download.html?project=games&package=vcmi 1 Click Install]
 +
If you are interested in providing builds for other distributions, please let us know.
  
Install original game and WoG addon. This can be done via Wine or from Windows.
+
== Compiling from source ==
To install WoG you can extract [https://dl.dropbox.com/u/22372764/vcmi/mods/wog.zip this archive] into Heroes 3 install directory. VCMI is also compatible with original WoG installer as well as WoG bundled with Era.
+
Please check following developer guide: [[How to build VCMI (Linux)]]
  
Extract [http://download.vcmi.eu/core.zip VCMI data package] into the H3 installation directory. If you used Wine and '''accepted the installer defaults''' this should be:  
+
= Installing Heroes III data files =
<pre>
+
To install VCMI you will need Heroes III: Shadow of Death or Complete edition.
~/.wine/drive_c/Program\ Files/3DO/Heroes3/
 
</pre>
 
  
After you have done the above you should have all 3 sources of data properly merged and ready to be copied into VCMI's data directory.
+
== Install data using vcmibuilder script (recommended for non-Flatpak installs) ==
 +
To install Heroes 3 data using automated script you need any of:
 +
* Offline Installer downloaded from gog.com (both .exe and .bin files are required)
 +
* Directory with preinstalled game
 +
* One or two CD's or CD images
  
Launch vcmiclient to determine data directory:
+
Run the script using options appropriate to your input files:
 
<pre>
 
<pre>
vcmiclient -v
+
vcmibuilder --cd1 /path/to/iso/or/cd --cd2 /path/to/second/cd
 +
vcmibuilder --gog /path/to/gog.com/installer.exe
 +
vcmibuilder --data /path/to/h3/data
 
</pre>
 
</pre>
 +
You should use only one of these commands.
  
The above command will display something similar to this:
+
On flatpak install, it's also possible to run the script, but any path seems to be interpreted from within the Flatpak sandbox:
 
<pre>
 
<pre>
Starting...  
+
flatpak run --command=vcmibuilder eu.vcmi.VCMI --data /path/to/h3/data`
VCMI 0.90
 
  data directory:    /usr/share/vcmi
 
  library directory: /usr/lib/vcmi
 
  binary directory:  /usr/bin/vcmi
 
    ...
 
 
</pre>
 
</pre>
  
Copy installed game to the "data directory". This should give you directory structure similar to this:
+
== Install data using gog.com offline installer ==
 +
 
 +
Download both files for the "offline backup game installers" and extract them using innoextract tool
 
<pre>
 
<pre>
/usr/share/vcmi/config/
+
    innoextract --output-dir=~/Downloads/HoMM3 "setup_heroes_of_might_and_magic_3_complete_4.0_(28740).exe"
/usr/share/vcmi/Data/
 
/usr/share/vcmi/Maps/
 
/usr/share/vcmi/Mods/
 
/usr/share/vcmi/Mp3/
 
 
</pre>
 
</pre>
Note: Depending on whether you are installing one of the binary packages or compiling from source and how you configured the data directory prefix (--datadir) of your source package it may be e.g. /usr/local/share/vcmi or /opt/games/vcmi or something else. In any case it must end in "vcmi" and contain the sub-directories listed above.
+
(note that installer file name might be different)
  
To have Music support on Fedora it is required to perform a additional step. Fedora doesn't provide Mp3 playback support natively due to patents applied on the Mp3 technique. The SDL_mixer package from the official Fedora repo is compiled without Mp3 support. Luckily this isn't a huge problem due to the filesystem API of VCMI. If you place ogg files in the Mp3 folder it'll use those files. So all you have to do is to convert the original Mp3 to OGG by yourself. Then copy them to the /Mp3 folder and remove the old .mp3 files with e.g. rm -rf *.mp3. You may use those tools for converting MP3 to OGG e.g.: Dirogg Bash Script http://freecode.com/projects/dirogg or the graphical program SoundConverter(sudo yum install soundconverter).
+
Once innoextract completes, start VCMI Launcher and choose to copy existing files. Select the ~/Downloads/HoMM3 directory. Once copy is complete, you can delete both offline installer files as well as ~/Downloads/HoMM3.
 +
 
 +
== Install using existing Heroes III data ==
 +
 
 +
Copy "Data", "Maps" and "Mp3" from Heroes III to:
 +
<pre>$HOME/.local/share/vcmi/</pre>
 +
Or, in case of flatpak install to
 +
<pre>$HOME/.var/app/eu.vcmi.VCMI/data/vcmi/</pre>
 +
On some distributions $XDG_DATA_HOME could differ so instead you may need to use:
 +
<pre>$XDG_DATA_HOME/vcmi/</pre>
  
 
= Launching game =
 
= Launching game =
 
To start the game type in console:
 
To start the game type in console:
 +
<pre>
 +
vcmilauncher
 +
</pre>
 +
Or, to start game directly avoiding Launcher:
 
<pre>
 
<pre>
 
vcmiclient
 
vcmiclient
 
</pre>
 
</pre>
 
VCMI should be also available via desktop environment menu or launcher (Games/Strategy/VCMI)
 
VCMI should be also available via desktop environment menu or launcher (Games/Strategy/VCMI)
 +
 
= Reporting bugs =
 
= Reporting bugs =
Report any issues with packages on our [http://bugs.vcmi.eu bugtracker] or post a message on [http://forum.vcmi.eu/index.php VCMI forums]
+
Please report any issues with packages according to
In report please post:
+
[http://wiki.vcmi.eu/index.php?title=Bug_reporting_guidelines Bug reporting guidelines]
* used distributive, version and architecture (for example "Ubuntu 11.10 32 bit"). For distributives that use rolling releases please post versions of all used libraries (boost, ffmpeg, SDL)
 
* console log as well as log files from ~/.vcmi
 
* steps to reproduce bug
 

Revision as of 11:31, 4 August 2023

VCMI requires data from original Heroes 3: Shadow of Death or Complete editions. Data from native Linux version made by LOKI will not work.

Binaries installation

Ubuntu

Latest stable build from PPA (recommended)

Up-to-date releases can be found in our PPA here: https://launchpad.net/~vcmi/+archive/ubuntu/ppa

To install VCMI from PPA use:

sudo apt-add-repository ppa:vcmi/ppa
sudo apt update
sudo apt install vcmi

Unstable testing build from PPA

We also provide latest, unstable builds mostly suitable for testing here: https://launchpad.net/~vcmi/+archive/ubuntu/vcmi-latest

In order to install from this PPA use:

sudo add-apt-repository ppa:vcmi/vcmi-latest
sudo apt update
sudo apt install vcmi

From Ubuntu repository

VCMI stable builds available in "multiverse" repository. Learn how to enable it in Ubuntu wiki.

Once enabled, you can install VCMI using Ubuntu Store or in terminal using following commands:

sudo apt update
sudo apt install vcmi

Note that version available in Ubuntu is outdated. Install via PPA is preferred.

Debian

Stable VCMI version is available in "contrib" repository. Learn how to enable it in Debian wiki.

To install VCMI from repository:

sudo apt-get update
sudo apt-get install vcmi

Flatpak (distribution-agnostic)

Latest public release build can be installed via Flatpak.

Depending on your distribution, you may need to install flatpak itself. You can find guide for your distribution here: https://www.flatpak.org/setup/

Once you have flatpak, you can install VCMI package which can be found here: https://flathub.org/apps/details/eu.vcmi.VCMI

Other distributions

For other distributions, VCMI can be installed from 3rd-party repositories listed below.
Note that these repositories are not supported by vcmi team and may not be up to date.

If you are interested in providing builds for other distributions, please let us know.

Compiling from source

Please check following developer guide: How to build VCMI (Linux)

Installing Heroes III data files

To install VCMI you will need Heroes III: Shadow of Death or Complete edition.

Install data using vcmibuilder script (recommended for non-Flatpak installs)

To install Heroes 3 data using automated script you need any of:

  • Offline Installer downloaded from gog.com (both .exe and .bin files are required)
  • Directory with preinstalled game
  • One or two CD's or CD images

Run the script using options appropriate to your input files:

vcmibuilder --cd1 /path/to/iso/or/cd --cd2 /path/to/second/cd
vcmibuilder --gog /path/to/gog.com/installer.exe
vcmibuilder --data /path/to/h3/data

You should use only one of these commands.

On flatpak install, it's also possible to run the script, but any path seems to be interpreted from within the Flatpak sandbox:

flatpak run --command=vcmibuilder eu.vcmi.VCMI --data /path/to/h3/data`

Install data using gog.com offline installer

Download both files for the "offline backup game installers" and extract them using innoextract tool

    innoextract --output-dir=~/Downloads/HoMM3 "setup_heroes_of_might_and_magic_3_complete_4.0_(28740).exe"

(note that installer file name might be different)

Once innoextract completes, start VCMI Launcher and choose to copy existing files. Select the ~/Downloads/HoMM3 directory. Once copy is complete, you can delete both offline installer files as well as ~/Downloads/HoMM3.

Install using existing Heroes III data

Copy "Data", "Maps" and "Mp3" from Heroes III to:

$HOME/.local/share/vcmi/

Or, in case of flatpak install to

$HOME/.var/app/eu.vcmi.VCMI/data/vcmi/

On some distributions $XDG_DATA_HOME could differ so instead you may need to use:

$XDG_DATA_HOME/vcmi/

Launching game

To start the game type in console:

vcmilauncher

Or, to start game directly avoiding Launcher:

vcmiclient

VCMI should be also available via desktop environment menu or launcher (Games/Strategy/VCMI)

Reporting bugs

Please report any issues with packages according to Bug reporting guidelines