Menu

Install:Git

Hugh Greene

This page explains how to download and install
ENIGMA directly from the
Git repository. Because this method
makes use of the command-line, doesn't install any shortcuts or
dependencies, requires an internet connection, and doesn't result in any
blatantly obvious runnable binaries, this method is usually discouraged
in favor of a more direct platform-dependent installation package, if
available. See Install.

In brief, an installation via Git would consist of the following steps:

  • Obtaining the necessary dependencies, such as Git, Java, and ENIGMA
    dependencies.
  • Pointing your Git client to our #Repository
    URL
    and cloning to a directory of your
    choosing.
  • Obtaining additional dependency binaries, which are maintained
    separately from our repository. Typically this is as simple as
    running python install.py.
  • Running lgm16b4.jar, which starts the user interface and tries
    to locate and link in the ENIGMA compiler.

Dependencies

  • Git Client - Obviously needed to
    perform the actual checkout.
  • Java - Needed to run the user interface,
    LateralGM.
  • ENIGMA dependencies, vary by platform:
    Windows,
    Linux,
    Mac.
  • Plugging in any additional dependencies you may want/need.

Command Line:
sudo apt-get install g++ zlib1g-dev libglu1-mesa-dev libalure-dev libvorbisfile3 libvorbis-dev libdumb1-dev

Repository URL

Our repository URL is the following:

Normally you would point your Git client to this URL and then either
clone or fetch the repository to your local machine (which will
ultimately download everything in the repository). Below we document how
to do this with some specific clients.

Command Line

git clone
Which will create its own directory. You can specify the directory by
adding it on to the end (after a space), but if omitted, it will just
use the humanish part of the url, after the last slash and before the
dot (usually "enigma-dev").

Binaries

After obtaining enigma from the repository, you will need additional
dependency binaries.

  • On python-enabled systems (mac, linux): python install.py (for
    more installation options, see install.py)
  • On Windows: Either install python and run the
    script above, or else download and unzip the Windows Git
    Patch
    into your enigma
    directory (requires 7z).
  • On non-python enabled systems, either install
    python and run the script above, or else please
    see Binaries#ENIGMA for a list of
    needed files which you must individually download and place in their
    respective directories.

Running

On Windows, you will need to set up a compiler description file, called
gcc.ey in Compilers/Windows/. Note that ENIGMA.exe will handle this
process for you, as well as installing several dependencies. It can be
copied over from enigma-dev/compilerSource/stupidity-buffer/ENIGMA.exe
into enigma-dev/ENIGMA.exe and then run. It will automatically run
LateralGM once it is finished with the installations.

On other platforms, you run lgm16b4.jar (right inside enigma-dev/)
which can be run by either double clicking or (preferably, since it
reports any problems or errors that occur, along with other verbose
debugging information) from command line with java -jar lgm16b4.jar.
Note that on Ubuntu (And possibly some other Linux distros) you have to
run from the terminal in order to ensure the correct working directory.
We're working on solutions to this problem at
LateralGM:Workdir.

Your first run will automatically build binaries according to your
platform, and these binaries will end up inside some hidden enigma-dev
subfolders. If you are an active git-privileged developer, you should
not need to worry about these files accidentally ending up in the
repository, because the .gitignore file has rules to ignore these files.
They will also automatically rebuild the relevant files whenever you
change something in enigma and restart LateralGM/Enigma.

Post-installation options

After installing, you may choose to create shortcuts or more obvious
runnable binaries. This process is up to you.

Update

Whenever a newer version becomes available on the git repository, you
can use your Git Client to pull the update. If any of the binaries (e.g.
enigma.jar, lgm16b4.jar) updated, you will also want to redownload those
and overwrite them into their appropriate directories. You will then
need to restart LateralGM/Enigma in order to complete the update
(rebuilding binaries for your platform, etc).

Command Line

cd enigma-dev/
git pull

Related

Wiki: ENIGMA
Wiki: Install
Wiki: Java
Wiki: LateralGM

MongoDB Logo MongoDB