on master help sign in
Update and clean up Install page for Meson
commitca004573b5182ccdefd6b82864d03bbd5c290917 authorKeaton Dunsford <keaton@tlon.io> dateMon 9 Apr 2018, 18:58 (9 years ago) parent593804a
1 file changed+135−34
docs/using/install.md+135−34
docs/using/install.md+135−34
@@ -12,11 +12,11 @@ Installing Urbit is easy. It just takes a few minutes to get an
1212instance up and running on the network.
1313
1414Urbit is designed to run on any Unix box with an internet connection.
15−Debian (jessie), Mac OS X, FreeBSD and Fedora all work well.
15+macOS, Ubuntu/Debian, FreeBSD, and Fedora all work well.
1616
1717If you run into trouble installing Urbit, please let us know via
1818email, [questions@urbit.org](mailto:questions@urbit.org), or on the
19−forum: [urbit.org/fora](https://urbit.org/fora). You can also chat
19+forum: [fora.urbit.org](https://fora.urbit.org). You can also chat
2020with us at [urbit.org/stream](https://urbit.org/stream).
2121
2222> Urbit is alpha software. It’s not yet completely stable, its crypto
@@ -41,57 +41,157 @@ gmp
4141libcurl
4242libsigsegv
4343libtool
44+libuv
45+meson
46+ninja
4447openssl
4548python2
4649ragel
4750re2c
4851```
4952
50−Which can usually be installed with the following one-liners:
53+### Instructions
54+
55+First, you'll install the required dependencies to build Urbit from source. Then, you'll clone the Urbit source code, hosted on Github. Next, you'll bootstrap the Git submodules needed for the build. Lastly, you'll run a [Meson](https://github.com/mesonbuild/meson) build on the Urbit source to create your Urbit binary for your host operating system. Then, finally, you'll be able to boot your urbit.
56+
57+For your host OS platform and relevant package installer, run the respective Bash shell commands listed below in a fresh terminal window to get Urbit installed:
58+
59+> For those new to the command line, see:
60+>
61+> - Mac: [Introduction to the Mac OS X Command Line](http://blog.teamtreehouse.com/introduction-to-the-mac-os-x-command-line)
62+> - Linux: [An Introduction to the Linux Terminal](https://www.digitalocean.com/community/tutorials/an-introduction-to-the-linux-terminal)
63+
64+#### macOS
65+
66+##### Homebrew
67+
68+> [Homebrew installation guide](https://treehouse.github.io/installation-guides/mac/homebrew)
5169
5270```
53−# macOS (Homebrew) https://treehouse.github.io/installation-guides/mac/homebrew
54−# Linuxbrew http://linuxbrew.sh/
55−$ brew install autoconf automake cmake gcc git gmp libsigsegv libtool meson ninja pkg-config python2 openssl re2c
71+# Bash
72+
73+brew update
74+brew install autoconf automake cmake gcc git gmp libsigsegv libtool meson ninja pkg-config python2 openssl re2c
75+git clone https://github.com/urbit/urbit
76+cd urbit
77+./scripts/bootstrap
78+./scripts/build
79+sudo install -m 0755 ./build/urbit /usr/local/bin
80+urbit
81+```
5682
57−# macOS (Macports)
58−$ sudo port install autoconf automake cmake gmp libsigsegv openssl
83+##### Macports
5984
60−# Ubuntu or Debian
61−$ sudo apt-get install autoconf automake cmake exuberant-ctags g++ git libcurl4-gnutls-dev libgmp3-dev libncurses5-dev libsigsegv-dev libssl-dev libtool make openssl python ragel re2c zlib1g-dev
85+```
86+# Bash
87+
88+sudo port selfupdate
89+sudo port install autoconf automake cmake gmp libsigsegv meson openssl
90+git clone https://github.com/urbit/urbit
91+cd urbit
92+./scripts/bootstrap
93+./scripts/build
94+sudo install -m 0755 ./build/urbit /usr/local/bin
95+urbit
96+```
6297
63−# Fedora
64−$ sudo dnf install autoconf automake cmake ctags gcc gcc-c++ git gmp-devel libcurl-devel libsigsegv-devel libtool ncurses-devel openssl openssl-devel python2 ragel re2c
98+#### Linux
6599
66−# FreeBSD
67−$ pkg install autoconf automake cmake curl gcc git gmake gmp libsigsegv libtool python ragel re2c
100+##### Linuxbrew
68101
69−# Arch
70−$ pacman -S autoconf automake cmake curl gcc git gmp libsigsegv libtool ncurses openssl python ragel re2c
102+> [Linuxbrew](http://linuxbrew.sh/)
71103
72−# AWS
73−$ sudo yum install --enablerepo epel autoconf automake cmake ctags gcc gcc-c++ git gmp-devel libcurl-devel libsigsegv-devel libtool ncurses-devel openssl-devel python re2c
104+```
105+# Bash
106+
107+brew update
108+brew install autoconf automake cmake gcc git gmp libsigsegv libtool meson ninja pkg-config python2 openssl re2c
109+git clone https://github.com/urbit/urbit
110+cd urbit
111+./scripts/bootstrap
112+./scripts/build
113+sudo install -m 0755 ./build/urbit /usr/local/bin
114+urbit
74115```
75116
76−### Clone and make
117+##### Ubuntu or Debian
77118
78−Once your dependencies are installed the rest is easy:
119+```
120+# Bash
121+
122+sudo apt-get update
123+sudo apt-get install autoconf automake cmake exuberant-ctags g++ git libcurl4-gnutls-dev libgmp3-dev libncurses5-dev libsigsegv-dev libssl-dev libtool make meson openssl python ragel re2c zlib1g-dev
124+git clone https://github.com/urbit/urbit
125+cd urbit
126+./scripts/bootstrap
127+./scripts/build
128+sudo install -m 0755 ./build/urbit /usr/local/bin
129+urbit
130+```
131+
132+##### Fedora
133+
134+```
135+# Bash
136+
137+sudo dnf upgrade
138+sudo dnf install autoconf automake cmake ctags gcc gcc-c++ git gmp-devel libcurl-devel libsigsegv-devel libtool meson ncurses-devel openssl openssl-devel python2 ragel re2c
139+git clone https://github.com/urbit/urbit
140+cd urbit
141+./scripts/bootstrap
142+./scripts/build
143+sudo install -m 0755 ./build/urbit /usr/local/bin
144+urbit
145+```
146+
147+##### FreeBSD
79148
80149```
81−$ git clone https://github.com/urbit/urbit
82−$ cd urbit
83−$ ./scripts/bootstrap
84−$ ./scripts/build
150+# Bash
151+
152+pkg upgrade
153+pkg install autoconf automake cmake curl gcc git gmake gmp libsigsegv libtool meson python ragel re2c
154+git clone https://github.com/urbit/urbit
155+cd urbit
156+./scripts/bootstrap
157+./scripts/build
158+sudo install -m 0755 ./build/urbit /usr/local/bin
159+urbit
85160```
86161
87−After running the build script, your Urbit executable is in `build/urbit`.
88−Install it wherever you'd like.
162+##### Arch
89163
90164```
91−$ sudo install -m 0755 build/urbit /usr/local/bin
165+# Bash
166+
167+pacman -Syu
168+pacman -S autoconf automake cmake curl gcc git gmp libsigsegv libtool meson ncurses openssl python ragel re2c
169+git clone https://github.com/urbit/urbit
170+cd urbit
171+./scripts/bootstrap
172+./scripts/build
173+sudo install -m 0755 ./build/urbit /usr/local/bin
174+urbit
92175```
93176
94−Test that it works:
177+##### AWS
178+
179+```
180+# Bash
181+
182+sudo yum update
183+sudo yum install --enablerepo epel autoconf automake cmake ctags gcc gcc-c++ git gmp-devel libcurl-devel libsigsegv-devel libtool meson ncurses-devel openssl-devel python re2c
184+git clone https://github.com/urbit/urbit
185+cd urbit
186+./scripts/bootstrap
187+./scripts/build
188+sudo install -m 0755 ./build/urbit /usr/local/bin
189+urbit
190+```
191+
192+### Test for successful installation
193+
194+After running your installed `urbit` command, check to see if the following output was printed:
95195
96196```
97197$ urbit
@@ -145,14 +245,15 @@ Simple Usage:
145245 urbit <myplanet or mycomet> to restart an existing urbit
146246```
147247
248+If so, then you're ready to boot your urbit. If not, check that you entered each Bash command correctly for your host OS platform. If you're still experiencing issues, feel free to drop into [Urbit chat](https://urbit.org/stream) for troubleshooting help.
249+
148250### Boot your urbit
149251
150−And you're done! If you're running Urbit on a normal modern PC or Mac, or
151−on a large cloud instance, move onto the next [setup](../setup/) section to
152−boot your urbit.
252+You've now installed the Urbit binary. If you're running Urbit on a normal modern PC or Mac, or
253+on a large cloud instance, move onto the next [setup](../setup/) section.
153254
154−If you're running Urbit in the cloud on a small instance, however, read
155−the below section, as you may need to additionally configure swap space.
255+If you're running Urbit in the cloud on a small instance, read
256+the below section, as you may need to additionally configure swap space, then continue.
156257
157258### (Set up swap)
158259
@@ -164,7 +265,7 @@ configuration is smaller than this, and you need to manually configure a
164265swapfile.
165266
166267Digital Ocean has a post on adding swap
167−[here](https://www.digitalocean.com/community/tutorials/how-to-add-swap-on-ubuntu-14-04).
268+[here](https://www.digitalocean.com/community/tutorials/how-to-add-swap-space-on-ubuntu-16-04).
168269For Amazon there’s a StackOverflow thread
169270[here](http://stackoverflow.com/questions/17173972/how-do-you-add-swap-to-an-ec2-instance).
170271