on 1e0ba21 help sign in
urbit.org/docs/using/install.md
150 lines 4.5 kB history raw
1---
2navhome: /docs/
3navuptwo: true
4next: true
5sort: 1
6title: Install
7---
9# Install
11Installing Urbit is easy. It just takes a few minutes to get an
12instance up and running on the network.
14Urbit is designed to run on any Unix box with an internet connection.
15Debian (jessie), Mac OS X, FreeBSD and Fedora all work well.
17If you run into trouble installing Urbit, please let us know via
18email, [questions@urbit.org](mailto:questions@urbit.org), or on the
19forum: [urbit.org/fora](https://urbit.org/fora). You can also chat
20with us at [urbit.org/stream](https://urbit.org/stream).
22> Urbit is alpha software. It’s not yet completely stable, its crypto
23> hasn’t been audited, and there are plenty of rough edges. Urbit is
24> lots of fun to play with, but not quite ready for your important or
25> sensitive data.
27### Update: `~2017.12.7`
29Urbit `0.5.1` is now live! We expect there to be a delay in getting our
30updated `urbit-0.5.1` binary packages propagated to Homebrew, APT and
31the other various package managers. So for now, **please build and
32install Urbit from source**. The instructions below will walk you through
33how to do that. You'll then be free to continue the boot and setup
34process as normal, per the rest of this Using docs section.
36## Build from source
38### Dependencies
40Urbit depends on:
42```
43C compiler (gcc or clang)
44automake
45autoconf
46libtool
47cmake
48ragel
49re2c
50libcurl
51curses
52gmp
53libsigsegv
54openssl
55```
57Which can usually be installed with the following one-liners:
59```
60# Mac OS X [Homebrew]
61$ brew install gmp libsigsegv openssl libtool autoconf automake cmake
63# Mac OS X [Macports]
64$ sudo port install gmp libsigsegv openssl autoconf automake cmake
66# Ubuntu or Debian
67$ sudo apt-get install libgmp3-dev libsigsegv-dev openssl libssl-dev libncurses5-dev make exuberant-ctags automake autoconf libtool g++ ragel cmake re2c libcurl4-gnutls-dev
69# Fedora
70$ sudo dnf install gcc gcc-c++ gmp-devel openssl-devel openssl ncurses-devel libsigsegv-devel ctags automake autoconf libtool ragel cmake re2c libcurl-devel
72# FreeBSD
73$ pkg install gmake gmp libsigsegv curl python automake autoconf ragel cmake re2c libtool curl
75# Arch
76$ pacman -S gcc gmp libsigsegv openssl automake autoconf ragel cmake re2c libtool ncurses curl
78# AWS
79$ sudo yum --enablerepo epel install gcc gcc-c++ gmp-devel openssl-devel ncurses-devel libsigsegv-devel ctags automake autoconf libtool cmake re2c libcurl-devel
80```
82### Clone and make
84Once your dependencies are installed the rest is easy.
86If you're cloning the `urbit/urbit` Git repository for the first time, run:
88```
89$ git clone https://github.com/urbit/urbit
90$ cd urbit
91$ make # gmake on FreeBSD
92```
94_**Updated for the `2017.12.7` continuity breach**_
96If you already have a clone of the `urbit/urbit` Git repository, assuming
97your `origin` upstream is the `urbit/urbit` repository on Github, run the
98following commands to make sure you're on the correct, clean Git branch:
100```
101$ cd urbit
102$ git fetch --all
103$ git checkout master
104$ git reset --hard origin/master
105$ make # gmake on FreeBSD
106```
108After running `make`, your Urbit executable is in `bin/urbit`. Install
109it wherever you'd like.
111```
112$ sudo install -m 0755 bin/urbit /usr/local/bin
113```
115Test that it works:
117```
118$ urbit
119simple usage:
120 urbit -c <mycomet> to create a comet (anonymous urbit)
121 urbit -w <myplanet> -t <myticket> if you have a ticket
122 urbit <myplanet or mycomet> to restart an existing urbit
123```
125### Boot your urbit
127And you're done! If you're running Urbit on a normal modern PC or Mac, or
128on a large cloud instance, move onto the next [setup](../setup/) section to
129boot your urbit.
131If you're running Urbit in the cloud on a small instance, however, read
132the below section, as you may need to additionally configure swap space.
134### (Set up swap)
136Urbit wants to map 2GB of memory when it boots up. We won’t necessarily
137use all this memory, we just want to see it. On a normal modern PC or Mac,
138or on a large cloud virtual machine, this is not an issue. On some small
139cloud virtual machines (Amazon or Digital Ocean), the default memory
140configuration is smaller than this, and you need to manually configure a
141swapfile.
143Digital Ocean has a post on adding swap
144[here](https://www.digitalocean.com/community/tutorials/how-to-add-swap-on-ubuntu-14-04).
145For Amazon there’s a StackOverflow thread
146[here](http://stackoverflow.com/questions/17173972/how-do-you-add-swap-to-an-ec2-instance).
148Don’t spend a lot of time tweaking these settings; the simplest
149thing is fine.