mirror of
https://github.com/zulip/zulip.git
synced 2025-11-10 17:07:07 +00:00
Based on feedback from first-time contributors, this commit simplifies the number of paths available for finding the dev setup directions you need. Setup instructions are now organized into Recommended (Vagrant) and Advanced (non-Vagrant). In order to get the ToC to display correctly, I've combined all the advanced, non-Vagrant methods into one page. I've left the old pages intact, with a note that the content has been moved and link to the new page. This is in case folks have linked directly to those pages. The advanced setup directions still need to be cleaned up, but this is a start.
90 lines
3.8 KiB
Markdown
90 lines
3.8 KiB
Markdown
# Development environment installation
|
|
|
|
## Requirements
|
|
|
|
The Zulip dev environment can be installed on **macOS, Windows, and Linux**
|
|
(Ubuntu recommended). You'll need at least **2GB of available RAM**.
|
|
|
|
Installing the Zulip dev 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][configure-proxy] if you need one.
|
|
|
|
## Recommended setup (Vagrant)
|
|
|
|
**For first-time contributors on macOS, Windows, and Ubuntu, we recommend using
|
|
the [Vagrant development environment][install-vagrant]**.
|
|
|
|
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 dev 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, you can easily **[install
|
|
without using Vagrant][install-direct]**.
|
|
* On **other Linux** distributions, you'll need to follow slightly different
|
|
instructions to **[install manually][install-generic]**.
|
|
* On **macOS and Linux** (Ubuntu recommended), you can install **[using
|
|
Docker][install-docker]**, though support for this remains experimental.
|
|
|
|
Unfortunately, the only supported method to install on Windows is the [Vagrant
|
|
method][install-vagrant].
|
|
|
|
## 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][install-direct] on Ubuntu 16.04 Xenial
|
|
or 14.04 Trust, or use [the manual install process][install-generic] 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 dev environment for remote use. See [next
|
|
section][self-install-remote] for details.
|
|
|
|
## Installing remotely
|
|
|
|
The Zulip dev 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 dev environment its **own virtual machine**, running
|
|
**Ubuntu 14.04 or 16.04**, with at least **2GB of memory**.
|
|
|
|
If Zulip dev will be the only thing running on the remote virtual machine, we
|
|
recommend installing [directly][install-direct]. Otherwise, we recommend the
|
|
[Vagrant][install-vagrant] method so you can easily uninstall if you need to.
|
|
|
|
If you wan to run a non-Ubuntu distribution, follow the [generic Linux
|
|
directions][install-generic].
|
|
|
|
## Next steps
|
|
|
|
Once you've installed the Zulip development environment, you'll want
|
|
to read these documents to learn how to use it:
|
|
|
|
* [Using the Development Environment][using-dev-env]
|
|
* [Testing][testing]
|
|
|
|
And if you've setup the Zulip dev environment on a remote machine, take a look
|
|
at our tips for [developing remotely][dev-remote].
|
|
|
|
[dev-remote]: dev-remote.html
|
|
[install-direct]: dev-setup-non-vagrant.html#installing-directly-on-ubuntu
|
|
[install-docker]: dev-setup-non-vagrant.html#using-docker-experimental
|
|
[install-generic]: dev-setup-non-vagrant.html#installing-manually-on-linux
|
|
[install-vagrant]: dev-env-first-time-contributors.html
|
|
[self-install-remote]: #installing-remotely
|
|
[self-slow-internet]: #slow-internet-connections
|
|
[configure-proxy]: dev-env-first-time-contributors.html#specifying-a-proxy
|
|
[using-dev-env]: using-dev-environment.html
|
|
[testing]: testing.html
|