on master help sign in
Merge pull request #576 from urbit/install-v0.8.0-redux

Re-add changes to getting started for v0.8.0

commitd5460e1253c8e5d7a613ff843c35b4caccdaaa86 authorMorgan Sutherland <msutherl@users.noreply.github.com> dateMon 22 Jul 2019, 21:41 (7 years ago) parentb5c204783b2327
3 files changed+21−162
concepts/source-code-overview.md+3−2 getting-started/contributing.md+1−1 getting-started/installing-urbit.md+17−159
concepts/source-code-overview.md+3−2
@@ -4,6 +4,7 @@ weight = 2
44template = "doc.html"
55description = "An explanation of Urbit's constituent GitHub repos."
66+++
7+
78We host all our source code on GitHub at [github.com/urbit](https://github.com/urbit).
89
910Since there's quite a number of repos, we'll talk about a few of the most
@@ -25,6 +26,6 @@ This is where the source code for urbit.org lives. Like the docs, the urbit.org
2526
2627We're working on a new Urbit style guide for urbit.org, the docs and Urbit web apps. If you're into visual design or are a CSS fanatic, jump in here.
2728
28−## [`urbit.org/azimuth`](https://github.com/urbit/azimuth)
29+## [`urbit/azimuth`](https://github.com/urbit/azimuth)
2930
30−Azimuth is a general-purpose PKI that Urbit uses for network identities.
31+Azimuth is a general-purpose PKI that Urbit uses for network identities.
getting-started/contributing.md+1−1
@@ -18,4 +18,4 @@ If you're just getting set up to work on the Urbit or Arvo code base for the fir
1818
1919## Code style
2020
21−Before contributing Hoon code, you should familiarize yourself with the [Hoon style guide](@/docs/learn/hoon/style.md). For a good example of idiomatic Hoon, see [Ford](https://github.com/urbit/urbit/blob/master/pkg/arvo/sys/vane/ford.hoon).
21+Before contributing Hoon code, you should familiarize yourself with the [Hoon style guide](@/docs/learn/hoon/style.md). For a good example of idiomatic Hoon, see [Ford](https://github.com/urbit/urbit/blob/master/pkg/arvo/sys/vane/ford.hoon).
getting-started/installing-urbit.md+17−159
@@ -3,9 +3,11 @@ title = "Installing Urbit"
33weight = 2
44template = "doc.html"
55+++
6−Arvo runs nicely on a Unix-like operating system -- Ubuntu, Fedora, macOS, and FreeBSD, for example. If you're using Windows, you'll need to get one of the aforementioned systems. Don't worry: most of them are free. Let's get it onto your machine.
6+
7+Arvo runs nicely on a Unix-like operating system – Ubuntu, Fedora, macOS, and FreeBSD, for example. If you're using Windows, you'll need to get one of the aforementioned systems. Don't worry: most of them are free. Let's get it onto your machine.
78
89But first, some terminology:
10+
911- `vere` or `urbit`: the interpreter that runs when you run a command like `urbit` or `/bin/urbit` in your command line
1012- `arvo`: the deterministic OS that lives in a directory whose name matches your Azimuth point, ie `~famreb-todmec` lives in `/famreb-todmec`
1113
@@ -19,174 +21,32 @@ Urbit: a personal server operating function
1921
2022## Instructions
2123
22−### MacOS
23−
24−We recommend using the Homebrew package manager to run Arvo on MacOS.
25−
26−```
27−# Bash
28−
29−brew update
30−brew install -v gcc git gmp libsigsegv libtool meson ninja pkg-config openssl
31−git clone https://github.com/urbit/urbit
32−cd urbit
33−./scripts/bootstrap
34−./scripts/build
35−sudo ninja -C ./build/ meson-install
36−urbit
37−```
24+### macOS (Darwin)
3825
39−### Ubuntu or Debian
26+We provide static binaries for macOS. You can grab the latest stable release as follows:
4027
4128```
42−# Bash
43−
44−sudo apt-get update
45−sudo apt-get install g++ git libcurl4-gnutls-dev libgmp3-dev libncurses5-dev libsigsegv-dev libssl-dev make openssl pkg-config python python3 python3-pip python3-setuptools zlib1g-dev ninja-build
46−sudo -H pip3 install --upgrade pip
47−sudo -H pip3 install meson
48−
49−git clone https://github.com/urbit/urbit
50−cd urbit
51−./scripts/bootstrap
52−./scripts/build
53−sudo ninja -C ./build/ install
54−urbit
55−```
56−
57−To access your Urbit via HTTP on port 80, you may need to run the following:
58−
59−```
60−sudo apt-get install libcap2-bin
61−sudo setcap 'cap_net_bind_service=+ep' $(which urbit)
62−```
63−
64−### Fedora 23 or earlier
65−
66−```
67−# Bash
68−
69−sudo yum upgrade
70−sudo yum install autoconf automake cmake ctags gcc gcc-c++ git gmp-devel libcurl-devel libsigsegv-devel libtool ncurses-devel ninja-build openssl openssl-devel pkgconfig python3 re2c wget
71−
72−# meson requires python 3.5; RHEL supplies wrong version
73−pushd /usr/src
74− sudo wget https://www.python.org/ftp/python/3.5.5/Python-3.5.5.tgz
75− sudo tar xzf Python-3.5.5.tgz
76− cd Python-3.5.5
77− sudo ./configure --enable--optimizations
78− sudo make altinstall
79− which python3.5
80− cd /usr/local/bin
81− sudo ln -s python3.5 python3
82− hash python3
83−popd
84−
85−curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
86−sudo /usr/local/bin/python3 get-pip.py
87−# downgrade meson to avoid dependencies that redhat can't meet
88−sudo -H /usr/local/bin/pip3 install meson
89−
90−
91−git clone git://github.com/ninja-build/ninja.git && cd ninja
92−git checkout release
93−./configure.py --bootstrap
94−sudo cp ./ninja /usr/local/bin
95−
96−git clone https://github.com/urbit/urbit
97−cd urbit
98−./scripts/bootstrap
99−./scripts/build
100−sudo /usr/local/bin/ninja -C ./build/ install
101−urbit
102−```
103−
104−### Fedora 24 or later
105−
29+curl -O https://bootstrap.urbit.org/urbit-darwin-v0.8.0.tgz
30+tar xzf urbit-darwin-v0.8.0.tgz
31+./urbit
10632```
107−# Bash
10833
109−sudo dnf upgrade
110−sudo dnf install autoconf automake cmake ctags gcc gcc-c++ git gmp-devel libcurl-devel libsigsegv-devel libtool ncurses-devel meson ninja-build openssl openssl-devel pkgconfig python3 re2c wget
34+### Linux (64-bit)
11135
112−git clone https://github.com/urbit/urbit
113−cd urbit
114−./scripts/bootstrap
115−./scripts/build
116−sudo ninja -C ./build/ install
117−urbit
118−```
119−
120−### Arch Linux
36+We also provide static binaries for 64-bit Linux distributions (Ubuntu, Debian, Fedora, Arch, etc.). You can get the latest stable release similarly:
12137
12238```
123−# Bash
124−
125−sudo pacman -Syyu
126−sudo pacman -S --needed curl gcc git gmp libsigsegv ncurses ninja openssl python python-pip meson
127−git clone https://github.com/urbit/urbit
128−cd urbit
129−./scripts/bootstrap
130−./scripts/build
131−cd build
132−ninja
133−sudo ninja meson-install
134−urbit
39+curl -O https://bootstrap.urbit.org/urbit-linux64-v0.8.0.tgz
40+tar xzf urbit-linux64-v0.8.0.tgz
41+./urbit
13542```
13643
137−### FreeBSD
44+### Other
13845
139−```
140−# Bash or Sh
141−
142−pkg upgrade
143−sudo pkg install curl gcc git gmake gmp libsigsegv python python3 ncurses openssl gmp
144−curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
145−sudo python3 get-pip.py
146−sudo -H pip install --upgrade pip
147−sudo -H pip install meson
148−sudo pkg install ninja
149−git clone https://github.com/urbit/urbit
150−cd urbit
151−sh ./scripts/bootstrap
152−sh ./scripts/build
153−sudo ninja -C ./build/ meson-install
154−urbit
155−```
156−
157−### Amazon Web Services
46+We maintain a [Nix](https://nixos.org/nix) derivation for Urbit in [nixpkgs](https://github.com/NixOS/nixpkgs). You can install and launch it like so:
15847
15948```
160−# Bash
161−
162−sudo yum update
163−sudo yum install gcc gcc-c++ git gmp-devel libcurl-devel libsigsegv-devel ncurses-devel openssl openssl-devel pkgconfig python3 python3-pip wget git
164−sudo env "PATH=$PATH" pip3 install --upgrade pip
165−sudo env "PATH=$PATH" pip3 install meson
166−
167−
168−# we need libsigsegv
169−#
170−
171−wget https://dl.fedoraproject.org/pub/fedora/linux/releases/30/Everything/x86_64/os/Packages/l/libsigsegv-2.11-7.fc30.x86_64.rpm
172−wget https://dl.fedoraproject.org/pub/fedora/linux/releases/30/Everything/x86_64/os/Packages/l/libsigsegv-devel-2.11-7.fc30.x86_64.rpm
173−sudo yum localinstall libsigsegv-2.11-7.fc30.x86_64.rpm
174−sudo yum localinstall libsigsegv-devel-2.11-7.fc30.x86_64.rpm
175−
176−git clone git://github.com/ninja-build/ninja.git
177−pushd ninja
178− git checkout release
179− ./configure.py --bootstrap
180− sudo cp ./ninja /usr/local/bin
181−popd
182−
183−
184−git clone https://github.com/urbit/urbit
185−cd urbit
186−./scripts/bootstrap
187−./scripts/build
188−sudo env "PATH=$PATH" ninja -C ./build/ install
189−
49+nix-env -i urbit
19050urbit
19151```
19252
@@ -196,8 +56,6 @@ One you've completed your installation, you can continue on to the instructions
19656
19757Or, if you want to try testing and writing code, check out the guide to [getting an unnetworked development ship](/docs/using/creating-a-development-ship).
19858
199−
200−
20159## Set Up Swap
20260
20361If you're running Urbit in the cloud on a small instance, you may need to additionally configure swap space. If you're not, you can safely ignore this section.
@@ -206,4 +64,4 @@ Urbit wants to map 2GB of memory when it boots up. We won’t necessarily use al
20664
20765Digital Ocean has a post on adding swap [here](https://www.digitalocean.com/community/tutorials/how-to-add-swap-space-on-ubuntu-16-04). For Amazon there’s a StackOverflow thread [here](https://stackoverflow.com/questions/17173972/how-do-you-add-swap-to-an-ec2-instance).
20866
209−Don’t spend a lot of time tweaking these settings; the simplest thing is fine.
67+Don’t spend a lot of time tweaking these settings; the simplest thing is fine.