Source code

Our Git repos and basic instructions how to build the source code

The LUWRAIN project stores all its source code in several Git repositories on github.com. It provides convenient access to the code and facilitates effective collaboration with other free software developers. All project repositories are gathered as submodules in our parent repository, which you can find at:

If you have the git utility installed on your computer and available as a command line tool, you can clone the entire tree of our source code with this command:

git clone --recursive https://github.com/luwrain/parent luwrain

Basic compilation of LUWRAIN is quite straightforward. If you'd like to get all jars compiled, just issue gradle build in the root directory of the source code tree. We also maintain the distCommon task for Gradle to get a ZIP archive with the distribution. But if you need a truely proper distribution, you should take care of sounds compilation, what is possible on Linux only, because you need timidity, sox and csvmidi to get sounds compiled. The sequence of commands to get the LUWRAIN distribution with sounds from scratch must be as following:

git clone --recursive https://github.com/luwrain/parent luwrain
cd luwrain/sounds
./make
cp *.wav ../core/src/main/resources/org/luwrain/core/sound
cd ..
gradle build
gradle distCommon

Getting a Windows installer and Debian packages requires a bit more tricky steps. See Jenkinsfile inside of the source code for more information. Please keep in mind that our compilation process implies that your system supports basic usual commands, such as make , git, gradle and so on.