on 424cd14 help sign in
urbit.org/docs/using/install.md
83 lines 2.8 kB history raw
1---
2next: true
3sort: 1
4title: Install
5navhome: /main
6---
8# Install
10<div class="row"><div class="col-md-8">
12Urbit is designed to run on any Unix box with an internet connection. Debian, OS X, FreeBSD and Fedora all work well.
14Urbit is alpha software. It’s not yet completely stable, its crypto hasn’t been audited and there are plenty of rough edges. Urbit is lots of fun to play with, but not quite ready for your important or sensitive data. Just so you know what you're getting into.
16</div></div>
18## Build from source
20### Dependencies
22Urbit depends on:
24 gcc (or clang)
25 gmp
26 libsigsegv
27 openssl
28 automake
29 autoconf
30 ragel
31 cmake
32 re2c
33 libtool
34 libssl-dev (Linux only)
35 ncurses (Linux only)
37Which can usually be installed with the following one-liners:
39 # Mac OS X [Homebrew]
40 brew install git gmp libsigsegv openssl libtool autoconf automake cmake
42 # Mac OS X [Macports]
43 sudo port install git gmp libsigsegv openssl autoconf automake cmake
45 # Ubuntu or Debian
46 sudo apt-get install libgmp3-dev libsigsegv-dev openssl libssl-dev libncurses5-dev git make exuberant-ctags automake autoconf libtool g++ ragel cmake re2c
48 # Fedora
49 sudo dnf install gcc gcc-c++ git gmp-devel openssl-devel openssl ncurses-devel libsigsegv-devel ctags automake autoconf libtool ragel cmake re2c
51 # FreeBSD
52 pkg install git gmake gmp libsigsegv openssl automake autoconf ragel cmake re2c libtool
54 # Arch
55 pacman -S gcc gmp libsigsegv openssl automake autoconf ragel cmake re2c libtool ncurses
57 # AWS
58 sudo yum —enablerepo epel install gcc gcc-c++ git gmp-devel openssl-devel ncurses-devel libsigsegv-devel ctags automake autoconf libtool cmake re2c
60### Setting up swap
62Urbit wants to map 2GB of memory when it boots up. We won’t
63necessarily use all this memory, we just want to see it. On a
64normal modern PC or Mac, this is not an issue. On some small
65cloud virtual machines (Amazon or Digital Ocean), the default
66memory configuration is smaller than this, and you need to
67manually configure a swapfile.
69Digital Ocean has a post on adding swap [here](https://www.digitalocean.com/community/tutorials/how-to-add-swap-on-ubuntu-14-04). For Amazon there’s a StackOverflow thread [here](http://stackoverflow.com/questions/17173972/how-do-you-add-swap-to-an-ec2-instance).
71Don’t spend a lot of time tweaking these settings; the simplest
72thing is fine.
74### Clone and make
76Once your dependencies are installed the rest is easy:
78 git clone https://github.com/urbit/urbit
79 cd urbit
80 make
81 curl -o urbit.pill https://bootstrap.urbit.org/latest.pill
83After running `make` your Urbit executable lives at `bin/urbit`. The `.pill` file is a compiled binary of Arvo that Urbit uses to bootstrap itself.