zulip/docs/development/overview.md

4.1 KiB

Development environment installation

Requirements

The Zulip development environment can be installed on macOS, Windows, and Linux (Ubuntu recommended). You'll need at least 2GB of available RAM.

Installing the Zulip development environment requires downloading several hundred megabytes of dependencies, so you will need an active, reasonably fast, internet connection throughout the entire installation processes. You can configure a proxy if you need one.

For first-time contributors on macOS, Windows, and Ubuntu, we recommend using the Vagrant development environment.

This method creates a virtual machine (for Windows and macOS) or a Linux container (for Ubuntu) inside which the Zulip server and all related services will run. Vagrant adds a bit of overhead to using the Zulip development server, but provides an isolated environment that is easy to install, update, and uninstall. It has been well-tested and performs well.

Advanced setup (non-Vagrant)

For more experienced contributors, or for first-time contributors who don't want to or can't use Vagrant, Zulip supports a wide range of ways to install the Zulip development environment on macOS and Linux (Ubuntu recommended):

  • On Ubuntu 16.04 Xenial and 14.04 Trusty and Debian 9 Stretch, you can easily install without using Vagrant.
  • On other Linux distributions, you'll need to follow slightly different instructions to install manually.
  • On macOS and Linux (Ubuntu recommended), you can install using Docker, though support for this remains experimental.

Unfortunately, the only supported method to install on Windows is the Vagrant method.

Slow internet connections

If you have a very slow network connection, however, you may want to avoid using Vagrant (which involves downloading an Ubuntu virtual machine or Linux Container) and either install directly on Ubuntu 16.04 Xenial or 14.04 Trust, or use the manual install process instead. These options only support Linux.

An alternative option if you have poor network connectivity is to rent a cloud server and install the Zulip development environment for remote use. See next section for details.

Installing remotely

The Zulip development environment works well on remote virtual machines. This can be a good alternative for those with poor network connectivity or who have limited storage/memory on their local machines.

We recommend giving the Zulip development environment its own virtual machine, running Ubuntu 14.04 or 16.04, with at least 2GB of memory.

If the Zulip development environment will be the only thing running on the remote virtual machine, we recommend installing directly. Otherwise, we recommend the Vagrant method so you can easily uninstall if you need to.

If you want to run a non-Ubuntu distribution, follow the generic Linux directions.

Next steps

Once you've installed the Zulip development environment, you'll want to read these documents to learn how to use it:

And if you've setup the Zulip development environment on a remote machine, take a look at our tips for developing remotely.