on master help sign in
getting-started: implement new guide
commitfd09b7f33bf230b4921079a129a9d64d06c3a5ce authorMatilde Park <matilde.park@urbit.org> dateFri 6 May 2022, 22:28 (4 years ago) parentf618d78
10 files changed+573−838
components/ContentArea.js+16−2 content/getting-started/_index.md+10−419 content/getting-started/cli.md−200 content/getting-started/easy.md+109 content/getting-started/fun.md+204 content/getting-started/getting-around-your-urbit.md+78 content/getting-started/hosted.md+23 content/getting-started/layer-2-for-planets.md+1−1 content/getting-started/planet.md−216 pages/getting-started/[[...slug]].js+132
components/ContentArea.js+16−2
@@ -63,13 +63,27 @@ export default function ContentArea(props) {
6363 <div className="w-full flex justify-center">
6464 {props.narrow ? (
6565 <Section narrow className={""}>
66− <h2 className="mb-16 mt-24">{props.title}</h2>
66+ <div className="mb-16">
67+ <h2 className="mt-24">{props.title}</h2>
68+ {props?.description && (
69+ <p className="text-wall-400 font-bold text-xl">
70+ {props.description}
71+ </p>
72+ )}
73+ </div>
6774 {props.children}
6875 <div className="pb-24" />
6976 </Section>
7077 ) : (
7178 <div className="min-w-0">
72− <h2 className="mb-16 mt-24">{props.title}</h2>
79+ <div className="mb-16">
80+ <h2 className="mt-24">{props.title}</h2>
81+ {props?.description && (
82+ <p className="text-wall-400 font-bold text-xl">
83+ {props.description}
84+ </p>
85+ )}
86+ </div>
7387 {props.children}
7488 <div className="pb-24" />
7589 </div>
content/getting-started/_index.md+10−419
@@ -1,434 +1,25 @@
11+++
22title = "Getting started with Urbit"
33weight = 0
4−description = "How to install Urbit."
5−page_template = "page_indiced.html"
6−template = "getting-started/index.html"
4+description = ""
75+++
86
9−Nothing about building a new OS from scratch has been easy. Or creating an identity system that adequately replaces the
10−IP address.
7+## Introduction
118
12−Getting on Urbit isn't always easy, either. The onboarding process hasn't been optimized by product managers in search
13−of maximal profit. There's no checkbox for your interests—you have to discover them yourself.
9+Nothing about building a new OS from scratch has been easy. Or creating an identity system that adequately replaces the IP address.
10+
11+Getting on Urbit isn't always easy, either. The onboarding process hasn't been optimized by product managers in search of maximal profit. There's no checkbox for your interests—you have to discover them yourself.
1412
1513But we like to think this hard work is exactly what makes Urbit special. **Consider yourself warned.**
1614
17−Why should you keep going? Urbit is a new computing stack based on you owning your networks, identity, and data. It's
18−well on its way to becoming your Final Computer.
15+## Benefits
16+
17+**As a user**, you can explore the people, community, and sheer novelty of the Urbit ecosystem while owning your entire experience. Your data, your messages, your apps.
1918
20−- **As a user**, you can explore the people, community, and sheer novelty of the Urbit ecosystem while owning your
21− entire experience. Your data, your messages, your apps.
22−- **As a developer**, you can now build apps, a protocol for a whole suite of apps, or an entire online subculture, and
23− distribute your work directly to your users' operating systems. No middlemen, no MEGACORPs, and no lock-in.
19+**As a developer**, you can now build apps, a protocol for a whole suite of apps, or an entire online subculture, and distribute your work directly to your users' operating systems. No middlemen, no MEGACORPs, and no lock-in.
2420
25−Someone once said, "All the smart people I know disappear into Urbit." If you're smart, you will too — not just
26−installing and running Urbit, but taking the first step toward deploying your Final Computer.
21+Someone once said, "All the smart people I know disappear into Urbit." If you're smart, you will too — not just installing and running Urbit, but taking the first step toward deploying your Final Computer.
2722
2823## Launch into Urbit
2924
3025Choose how you want to disappear into Urbit.
31−
32−<div id="launch-type" class="grid grid-cols-1 lg:grid-cols-3 gap-4">
33− <a class="type block !p-8 bg-wall-100 rounded-xl hover:bg-wall-200 hover:opacity-100" href="#easy-steps">
34−
35−### Easy
36−
37−Deploy Urbit on your local system
38−
39−- Zero cost to you
40−- Setup in minutes using a desktop GUI
41−
42−- Not a permanent way to use Urbit
43−
44− </a>
45− <a class="type block p-8 bg-wall-100 rounded-xl hover:bg-wall-200 hover:opacity-100" href="#fun-steps">
46−
47−### Fun
48−
49−Deploy Urbit on a cloud/VPS provider
50−
51−- Self-host and own your data
52−- Portable identity and data accessible from anywhere
53−
54−- Requires investment in planet (one-time) and cloud service (monthly)
55−- Requires Linux proficiency
56−
57− </a>
58− <a class="type block p-8 bg-wall-100 rounded-xl hover:bg-wall-200 hover:opacity-100" href="#hosted-steps">
59−
60−### Hosted
61−
62−Deploy Urbit on a managed service
63−
64−- Streamlined setup for ownership and identity
65−- No technical proficiency required
66−
67−- Need to trust your provider
68−- Requires monthly investment
69−
70− </a>
71−</div>
72−
73−<style>
74− .type h3 {
75− margin-bottom: 0.5rem;
76− }
77− .type > p {
78− font-size: 1rem;
79− margin-top: 0.5rem;
80− margin-bottom: 0.5rem;
81− }
82− .type ul {
83− margin-top: 1rem;
84− margin-bottom: 0rem;
85− }
86− .type li {
87− margin-top: 0.2rem;
88− margin-bottom: 0.2rem;
89− }
90− .type li p {
91− font-size: 0.925rem;
92− }
93−</style>
94−
95−## Easy {#easy-steps}
96−
97−### Get Port
98−
99−Port is a desktop GUI application that allows you to spin up, access, and manage your Urbit ships without any knowledge
100−of the command line or Urbit binary.
101−
102−Port isn't considered a permanent way to run Urbit, but you can start with it now and migrate your data to a VPS/cloud
103−provider later using scp.
104−
105−<div id="port-os" class="os mv3">
106− <input type="radio" id="port-macos" name="port-os" checked>
107− <label for="port-macos">MacOS</label>
108− <div class="tab">
109− <p>To install <strong>Port</strong> on MacOS simply download and open the <code>.dmg</code> file.</p>
110− <a href="https://github.com/urbit/port/releases/latest/download/Port.dmg" class="badge-sm bg-green-400 text-white" style="width: 12rem;">
111− Download Port
112− </a>
113− </div>
114−
115− <input type="radio" id="port-linux" name="port-os">
116− <label for="port-linux">Linux</label>
117− <div class="tab">
118−
119−We use `snap` so that **Port** can stay updated automatically. If you already have `snap` installed, simply run:
120−
121−```sh
122−sudo snap install port
123−```
124−
125−Or to install `snap` for your distribution, snapcraft provides [installation instructions](https://snapcraft.io/docs/installing-snapd).
126−
127− </div>
128−
129− <input type="radio" id="port-windows" name="port-os">
130− <label for="port-windows">Windows</label>
131− <div class="tab">
132− <p>To install <strong>Port</strong> on Windows simply download and open the <code>.exe</code> file.</p>
133− <a href="https://github.com/urbit/port/releases/latest/download/PortSetup.exe" class="badge-sm bg-green-400 text-white" style="width: 12rem;">
134− Download Port
135− </a>
136− <p><small>
137− Note: The Windows version is newly released and is not yet code signed so you will have to click through a prompt warning you about running it. If you simply click <code>more info</code> -> <code>run anyway</code> it will run.
138− </small></p>
139− </div>
140−</div>
141−
142−<style>
143− .os {
144− display: flex;
145− flex-wrap: wrap;
146− }
147− .os label {
148− order: -1;
149− padding: .5rem;
150− min-width: 70px;
151− text-align: center;
152− cursor: pointer;
153− }
154− .os input[type="radio"] {
155− display: none;
156− }
157− .os .tab {
158− display: none;
159− margin-top: 1rem;
160− width: 100%;
161− max-width: 100%;
162− }
163− .os .tab p:first-child {
164− margin-top: 0;
165− }
166− .os .tab p:last-child {
167− margin-bottom: 0;
168− }
169− .os input[type='radio']:checked + label {
170− font-weight: bold;
171− background-color: rgba(244,243,241,1);
172− border-radius: 0.5em;
173− }
174− .os input[type='radio']:checked + label + .tab {
175− display: block;
176−}
177−</style>
178−
179−### Launch a comet without an Urbit ID
180−
181−Start Port and hit the **Start without an ID** button. It'll take a few minutes to spin up the new comet. Once that's
182−finished, click **Launch Ship into Urbit** and you'll be at the login screen.
183−
184−> Want to combine the simplicity of Port with a permanent Urbit ID?
185−>
186−> If you already have a planet, first get your keyfile using the steps below. Start Port, click the **Boot a fresh ID**
187−> option. Give your ship a name, and in the **Shipname** field, enter your planet name, like `~sampel-palnet`. For the
188−> **Key File** field, browse to the keyfile, select it, and hit **Continue**. Port will boot your Urbit in a few
189−> minutes!
190−
191−### Log in
192−
193−Within Port, click on **Copy Access Key**, paste it into the **Access Key** field, and hit **Continue**. You'll now be
194−at your ship's home screen and ready to explore Urbit.
195−
196−Jump ahead to the [getting around your Urbit](#get-around-your-urbit) section for more.
197−
198−## Fun {#fun-steps}
199−
200−### Get yourself a planet
201−
202−Here's some of the hard fun work we talked about earlier. While you can purchase a planet, we recommend asking for one.
203−Find someone who can give you a planet and make your case! That's the spirit of Urbit, after all — novel and esoteric.
204−
205−- Ask for one on Twitter! Start with [@urbit](https://twitter.com/urbit) and explore from there.
206−- Go back to the instructions for launching a [temporary comet with Port](#easy-steps), get yourself onto the network,
207− find a group, and start conversations with people with planets to spare.
208−
209−An invitation to claim your planet comes in one of two forms. The first is an email invitation with an Urbit ID and a
210−Master Ticket. The second, only recently made available through our [Layer 2 (L2)
211−solution](/getting-started/layer-2-for-planets), is an activation code or a link to activate on Bridge.
212−
213−### Use Bridge to get your keyfile
214−
215−Now that you have your planet, you can create your keyfile (`sample-palnet.key`), which is the cryptographic signature
216−required to encrypt and decrypt messages on Urbit's P2P network.
217−
218−If you don't already have your keyfile — a common situation for those receiving a L2 planet in particular — you can
219−download one from [Bridge](https://bridge.urbit.org/).
220−
221−Login to Bridge and choose the **Master Ticket** option. Enter the name of your newly-acquired planet and the Master
222−Ticket password. Click the **ID** box near the bottom of the page, then the** Download Passport** button to download a
223−`.zip` file (named `sampel-palnet-passport.zip`), which contains your keyfile.
224−
225−**[screenshot of the ID section on Bridge, once you've authenticated, with the Download Passport button visible]**
226−
227−Unzip the passport to access your keyfile and the Master Ticket secret, which you should store somewhere secure. You'll
228−use your keyfile in the next step.
229−
230−### Install Urbit via the command line
231−
232−These fun instructions assume you have access to a **remote Linux system** running at a **VPS or cloud provider** of
233−your choice. If you want to run Urbit locally, whether on Linux, macOS, or Windows, you can adapt the [command line
234−install instructions](/getting-started/cli) for your base OS to what you'll find below.
235−
236−You may also want to see the [cloud hosting guide](/using/running/hosting) for additional details like setting your
237−domain name and establishing a firewall, but for now, we'll focus on getting you set up as soon as possible.
238−
239−Download Urbit with the following:
240−
241−```
242−mkdir ~/urbit
243−cd ~/urbit
244−wget --content-disposition https://urbit.org/install/linux64/latest
245−tar zxvf ./linux64.tgz --strip=1
246−```
247−
248−Next, transfer your `keyfile.key` to your server using scp or an FTP client, then move it to the `~/urbit` directory you
249−created in the last step.
250−
251−Now you can run Urbit for the first time. Run the below command, replacing `ames_port` with a public port number between
252−`49152` to `65535`, `sampel-palnet` with the name of your planet, and `sampel-palnet.key` with the name of your keyfile.
253−
254−```
255−./urbit -p ames_port -w sampel-palnet -k ./sampel-palnet.key
256−```
257−
258−Arvo, the Urbit OS, now creates a directory called `sampel-palnet/` and begins booting your planet and establishing
259−connections with the P2P network. When that's finished, you'll see Dojo, the Urbit command line:
260−
261−```
262−~sampel-palnet:dojo>
263−```
264−
265−Welcome to Urbit! You can skip ahead to [log in](#fun-log-in), or stick around for some tips.
266−
267−### The aforementioned tips
268−
269−Check out the [cloud hosting guide](/using/running/hosting) for tips on improving the environment for Urbit, with a
270−particular focus on establishing your domain name and using SSL for encryption.
271−
272−Shut down your planet by typing `Ctrl+D` into Dojo.
273−
274−To boot your planet up again, run the following command, once again replacing `ames_port` with the port you used
275−previously, and now referencing your planet's folder.
276−
277−```
278−./urbit -p ames_port sampel-palnet
279−```
280−
281−Your planet's folder, `sampel-palnet/`, is called your **pier**, and it holds all your data. If you want to migrate your
282−data from one system to another, you must bring your pier.
283−
284−You should also delete your keyfile from your remote system to prevent yourself from using the same key twice, which
285−will cause communication problems with other planets.
286−
287−```
288−rm ./my-planet.key
289−```
290−
291−### Log in {#fun-log-in}
292−
293−First, use your browser to navigate to the URL+port where your ship is running. This could be an IP address or a
294−fully-qualified domain name, depending on how you set yours up.
295−
296−Instead of a static password, Urbit uses an Access Key, which is given by your ship itself.
297−
298−Open up the Urbit CLI again if it's not still running, and enter `+code`. The output is your Access Key, which you need
299−to copy and paste into your browser. Click **Continue** to finish authentication and log in.
300−
301−Jump ahead to the [getting around your Urbit](#get-around-your-urbit) section for more.
302−
303−## Hosted {#hosted-steps}
304−
305−Hosting providers can sell you a planet and manage the hosting for you for a regular fee. We recommend [Urbit
306−Host](https://urbithost.com/) (not directly affiliated with Urbit) for quickly acquiring a planet and the hosting
307−required to make your Urbit experience accessible from anywhere.
308−
309−Two important points about hosting providers:
310−
311−- Because the provider has access to the resources that run your Urbit experience, you must trust them with your data.
312−- Urbit has portable data, so you should be able to work with a hosting provider to download all your data and boot up
313− elsewhere if you choose to migrate or start self-hosting.
314−
315−### Log in
316−
317−The exact steps for logging into your Urbit will depend on your hosting provider's infrastructure and the flow they've
318−developed. If you have questions about logging into your hosted Urbit ship, contact their support.
319−
320−Check out the next section for more.
321−
322−## Get around your Urbit
323−
324−After you've logged into your Urbit for the first time, you're officially an Urbiter! You've unlocked the entire Urbit
325−network with your newly-minted ID — the key to your new digital life.
326−
327−**SCREENSHOT**
328−
329−You'll see your Home and a few pre-installed applications: Terminal, Groups, and Bitcoin. More on them in a moment.
330−
331−Above those are buttons to view **System Preferences** and **Help and Support** and check out notifications for
332−newly-installed or recently-updated applications, respectively. The search bar helps you surface applications you
333−already have installed, or discover developers and applications across the Urbit network.
334−
335−You'll likely want to focus on finding and joining new communities, which you can do with the **Groups** app, which is
336−sometimes referred to as Landscape. Click on the box to open the application.
337−
338−## Join a few groups with fellow Urbiters
339−
340−No two people will ever have the same experience on Urbit. That depends entirely on who you find and where they invite
341−you to join them. But we can set you down a good path.
342−
343−With Groups open, you'll see three boxes for **My Channels**, your local weather, and a stylized clock. You can dig into
344−those later, but let's focus on joining new communities, which is likely one of the reasons you wanted to try out Urbit
345−in the first place.
346−
347−Click on **Join Group**, and in that modal, enter `~bitbet-bolbel/urbit-community` — the official Urbit community. You
348−can either automatically join all channels by clicking the Join all channels checkbox, or leave it blank and hit Join
349−Group right away. Your Urbit will connect to the P2P network and download information about the group, like a list of
350−all its participants. When that's finished, click **View Group**.
351−
352−You're now looking at a single group and all of its channels. If you didn't choose to join all channels right away,
353−click on an individual channel and then **Join Channel**, which immediately opens the feed of latest messages.
354−
355−Here are a few more useful groups to join:
356−
357−- `~wolref-podlex/foundation`: The official community for the Urbit Foundation, which is one of the organizations behind
358− Urbit's development. There are channels around pitching Urbit to others, applying for grants, planning meetups, and
359− much more.
360−- `~rondev/group-discovery`: A group for finding other groups.
361−- `~middev/the-forge`: A group for sharing, discussing, discovering new Urbit applications.
362−- `~hocwyn-tipwex/uqbar-event-horizon`: A community around [Uqbar](https://uqbar.network/), a company creating
363− applications and experiences on top of Urbit — notably EScape, which is an alternative to the default Groups
364− application for joining communities and messaging with other Urbiters.
365−
366−## Get more Urbit apps
367−
368−Groups are great, but Urbit goes way deeper with apps that are developed specifically for Urbit and use P2P networking
369−for everything.
370−
371−We'll use Canvas — a collaborative app for creating pixel art with others — as an example to show the process.
372−
373−Head back to your Urbit's home — the URL you used to log in and view your preinstalled apps. From there, click on the
374−search bar and enter `~dister-norsyr-torryn/canvas`. Click on the first result, which shows you details about the
375−developer, the license, a website for more information, and when the app was last updated.
376−
377−Click **Get App**, then **Get "Canvas"** to continue. Your Urbit gets to work, and once installation is finished, click
378−**Open App** to see it in action.
379−
380−Some popular apps to get things moving:
381−
382−- **EScape** / `~dister-fabnev-hinmur/escape`: An alternative UI to the core groups, communities, and messaging
383− capabilities in Urbit.
384−- **Studio** / `~tirrel/studio`: Tools for making money on the Urbit network.
385−- **Wrdu** / `~magped-magped-rabsef-bicrym/wrdu`: A Wordle clone.
386−- **cliff** / `~paldev/cliff`: An filesystem explorer for your ship.
387−
388−Don't forget [awesome-urbit](https://github.com/urbit/awesome-urbit) on GitHub. Some of the applications there require
389−more manual setup, but they're all Urbit-first.
390−
391−## Get help
392−
393−If you need help getting around Urbit, the best place to go is the official Urbit community:
394−`~bitbet-bolbel/urbit-community`. Those in the Help channel are willing to troubleshoot or provide links to resources to
395−help you get out of a jam.
396−
397−That community isn't for every support request, however. If your question involves an app, you're better served reaching
398−out to the developer — for example, if you have an issue with EScape's notifications feature, reach out to Uqbar in
399−`~hocwyn-tipwex/uqbar-event-horizon`.
400−
401−If you're having trouble with your planet or the hosting provider that's running your ship, try their support, as
402−they'll have more context and resources to help solve your issue.
403−
404−And if you can't get through this guide and launch into Urbit, you may have luck with the [urbit live
405−community](https://t.me/UrbitLiveGroup) on Telegram.
406−
407−## What's next?
408−
409−You made it! You did the work and now have your Final Computer.
410−
411−What you do with it is up to you. Where you go from here is up to you. No two experiences on Urbit will be the same, so
412−we encourage you to follow your own. Explore. Discover! Get lost and find the people who make you feel like you're not
413−lost any more.
414−
415−Still need some bumpers to guide you along the way?
416−
417−**Learn more about using Urbit**: Check out the [User's Manual](/using).
418−
419−**Get updates about Urbit**:
420−[Subscribe](https://urbit.us11.list-manage.com/subscribe/post?u=972a03db9e0c6c25bb58de8c8&id=be143888d2) to the
421−Urbit Newsletter for new blog posts and events from one of the primary organizations responsible for Urbit development.
422−
423−**Join an event or meetup**: Many of the organizations and people behind Urbit host virtual and in-person events on a
424−regular basis — check out the latest on our [Events feed](/events).
425−
426−**Learn how to build on Urbit**: If you're the kind of person who wants to build applications directly for discerning
427−communities with built-in identity and networking primitives, or even jump into the Urbit kernel's core, we have the
428−most phenomenally-comprehensive information to get you started.
429−
430−- Read the [Development Docs](/docs).
431−- Check out the development-driven [Getting Started guide](/docs/development/develop).
432−- Join [Hoon School Live (HSL)](https://hooniversity.org/), the cohort-driven course that teaches you Hoon, with the
433− goal of getting you comfortable writing generators, working with core concepts, using the standard library, and
434− distributing code using desks.
content/getting-started/cli.mddeleted−200
@@ -1,200 +0,0 @@
1−+++
2−title = "Command line install"
3−weight = 4
4−description = "Installation instructions for power users."
5−+++
6−
7−If you're a power user, you can run the Urbit virtual machine directly using the command line. Choose the code for your operating system and run the commands in your terminal.
8−
9−<div id="os" class="os">
10− <input type="radio" id="macos" name="os" checked>
11− <label for="macos">MacOS</label>
12− <div class="tab">
13−
14−```bash
15−mkdir ~/urbit
16−cd ~/urbit
17−curl -JLO https://urbit.org/install/mac/latest
18−tar zxvf ./darwin.tgz --strip=1
19−~/urbit/urbit
20−```
21−
22− </div>
23−
24− <input type="radio" id="linux" name="os">
25− <label for="linux">Linux</label>
26− <div class="tab">
27−
28−```shell
29−mkdir ~/urbit
30−cd ~/urbit
31−wget --content-disposition https://urbit.org/install/linux64/latest
32−tar zxvf ./linux64.tgz --strip=1
33−~/urbit/urbit
34−```
35−
36−Linux users may need to run this command in another terminal window to access your Urbit on port 80:
37−
38−```shell
39−sudo apt-get install libcap2-bin
40−sudo setcap 'cap_net_bind_service=+ep' ~/urbit/urbit
41−```
42−
43−</div>
44−
45− <input type="radio" id="windows" name="os">
46− <label for="windows">Windows</label>
47− <div class="tab">
48−
49−```winbatch
50−mkdir %USERPROFILE%\urbit
51−cd %USERPROFILE%\urbit
52−curl -JLO https://urbit.org/install/windows/latest
53−tar zxvf .\windows.tgz --strip=1
54−%USERPROFILE%\urbit\urbit
55−```
56−
57−> Windows 10 build 17063 and later includes the familiar `curl` and `tar` command-line tools.
58−
59−</div>
60−</div>
61−
62−If successful, you will see a block of output beginning with the line:
63−
64−```
65−Urbit: a personal server operating function
66−```
67−
68−### Booting a free identity {#comet}
69−
70−There are two parts to Urbit: an **ID** and an **Operating System**.
71−
72−You have just installed the Operating System on your computer.
73−
74−The **ID** is similar to a username and password on another site. The difference is that the public part (the username) is verified by thousands of people around the world while only you hold the key (the password) to that ID.
75−
76−There are five kinds of Urbit IDs but to get started you only need to know about two: we call them **planets** and **comets**.
77−
78−---
79−
80−**Planets** are scarce (this prevents spamming, among other things) and usually require a price to acquire. This is the recommended way to run Urbit, but it's a bit more involved.
81−
82−A planet name looks like `~sampel-palnet`.
83−
84−[Follow this guide](/getting-started/planet) if you have already acquired a planet.
85−
86−[Find a planet to purchase](/getting-started#get-a-planet)
87−
88−---
89−
90−**Comets** are practically unlimited and free to acquire. At present, these are a great way to try out the network for free.
91−
92−A comet name looks like `~dasres-ragnep-lislyt-ribpyl--mosnyx-bisdem-nidful-marzod`.
93−
94−[Read more about Urbit ID here](/understanding-urbit/urbit-id)
95−
96−---
97−
98−To boot a comet, go into the command line and run the following command from the `urbit` directory you created during [Urbit installation](#os).
99−
100−```sh
101−~/urbit/urbit -c mycomet
102−```
103−
104−It may take a while to load the comet (probably only take a few minutes, but it could take longer). This comes along with it being free. When it's done you'll some messages ending like this:
105−
106−```
107−ames: live on 31337
108−http: web interface live on http://localhost:8080
109−http: loopback live on http://localhost:12321
110−~sampel_marzod:dojo>
111−```
112−
113−When your comet is finished booting, you will see `~sampel_marzod:dojo>` (Dojo: the Urbit command line).
114−
115−To exit Urbit, use `Ctrl-D` or enter `|exit` into Dojo.
116−
117−To start your comet up again, run the following from your `urbit` directory (note the lack of `-c` argument):
118−
119−```sh
120−~/urbit/urbit mycomet
121−```
122−
123−### Using the web interface
124−
125−Urbit is an entirely new computer, so by default it drops you into the "dojo," which is its terminal. Like your current computer, it can be used to do just about anything if you know the right commands. You only need to know one command for now.
126−
127−At the moment, the most common way to use Urbit is by launching apps like Groups (a communications suite) from the web interface homescreen. The web interface allows you to use your ship without touching the terminal. You just need to get the password, or `code`, from the terminal.
128−
129−1. With your Urbit running, look for a line that says something like `http: web interface live on http://localhost:8080`. The number given is the port that your ship is using. It will most likely be 80 or 8080, but we're just making sure.
130−2. If the port given is `80`, simply type `localhost` into your browser's address bar. If the given port is a different number, such as `8080`, you would type `localhost:8080`. You'll be met with a login prompt.
131−3. In the window where you found the port number, type `+code` and press return. Copy-paste the code that appears into the "Access Key" field in the browser, and press continue.
132−4. Once in, take a look around and try launching an app like Groups.
133−
134−## Next Steps
135−
136−### Updating your comet {#updating}
137−
138−Urbit comes with a recent release of the Urbit OS, but automatic updates of the `%base` desk (which contains the kernel of the OS) are not enabled by default for Comets. Many comets are used only once and thrown away, so it would be wasteful to update every single comet as soon as it boots. If you plan to use your comet for more than a quick test, you'll probably want to ensure you're running the latest version of the OS.
139−
140−You can enable updates for your comet by typing `|install (sein:title our now our) %kids, =local %base` into Dojo and pressing Enter.
141−
142−```
143−> |install (sein:title our now our) %kids, =local %base
144−>=
145−kiln: activated install into %base from [~samzod %kids]
146−kiln: downloading update for %base from [~samzod %kids]
147−```
148−
149−### Read More about the Dojo {#the-dojo}
150−
151−The dojo is Urbit's command line. You can use it to control your ship, or to execute arbitrary code. Check out the links below for more information.
152−
153−- [Basic Operations](/using/os/getting-started)
154−- [Basic Hoon](/docs/tutorials/hoon/hoon-school/setup)
155−- [Glossary Entry](/docs/glossary/dojo)
156−
157−### Purchase a Permanent Identity {#boot-your-planet}
158−
159−You can continue using this comet indefinitely. There are currently few differences between using a comet-level identity and a planet-level one. However, some groups will not allow comets entry in order to maintain a certain level of quality, and changes may be made in the future that further devalue comets. They will always, however, be able to access the basic functions of the network.
160−
161−A comet also comes with a long and fairly unmemorable name whereas a planet has a short name and a "sigil" (avatar) associated with it that makes it more identifiable on the network. You may notice all this within the first few minutes of using Urbit.
162−
163−[For details of how to purchase a planet, visit this page](/getting-started#get-a-planet).
164−
165−<style>
166− .os {
167− display: flex;
168− flex-wrap: wrap;
169− }
170− .os label {
171− order: -1;
172− padding: .5rem;
173− min-width: 70px;
174− text-align: center;
175− cursor: pointer;
176− }
177− .os input[type="radio"] {
178− display: none;
179− }
180− .os .tab {
181− display: none;
182− margin-top: 1rem;
183− width: 100%;
184− max-width: 100%;
185− }
186− .os .tab p:first-child {
187− margin-top: 0;
188− }
189− .os .tab p:last-child {
190− margin-bottom: 0;
191− }
192− .os input[type='radio']:checked + label {
193− font-weight: bold;
194− background-color: rgba(244,243,241,1);
195− border-radius: 0.5em;
196− }
197− .os input[type='radio']:checked + label + .tab {
198− display: block;
199−}
200−</style>
content/getting-started/easy.mdnew file+109
@@ -0,0 +1,109 @@
1++++
2+title = "Easy"
3+description = "Run Urbit with a desktop app"
4+weight = 1
5++++
6+
7+### Get Port
8+
9+Port is a desktop GUI application that allows you to spin up, access, and manage your Urbit ships without any knowledge of the command line or Urbit binary.
10+
11+<div id="port-os" class="os">
12+ <input type="radio" id="port-macos" name="port-os" checked>
13+ <label for="port-macos">MacOS</label>
14+ <div class="tab">
15+ <p>To install <strong>Port</strong> on MacOS simply download and open the <code>.dmg</code> file.</p>
16+ <a href="https://github.com/urbit/port/releases/latest/download/Port.dmg" class="button-lg bg-green-400 text-white" style="width: 12rem;">
17+ Download Port
18+ </a>
19+ </div>
20+
21+ <input type="radio" id="port-linux" name="port-os">
22+ <label for="port-linux">Linux</label>
23+ <div class="tab">
24+
25+We use `snap` so that **Port** can stay updated automatically. If you already have `snap` installed, simply run:
26+
27+```sh
28+sudo snap install port
29+```
30+
31+Or to install `snap` for your distribution, snapcraft provides [installation instructions](https://snapcraft.io/docs/installing-snapd).
32+
33+ </div>
34+
35+ <input type="radio" id="port-windows" name="port-os">
36+ <label for="port-windows">Windows</label>
37+ <div class="tab">
38+ <p>To install <strong>Port</strong> on Windows simply download and open the <code>.exe</code> file.</p>
39+ <a href="https://github.com/urbit/port/releases/latest/download/PortSetup.exe" class="button-lg bg-green-400 text-white" style="width: 12rem;">
40+ Download Port
41+ </a>
42+ <p><small>
43+ Note: The Windows version is newly released and is not yet code signed so you will have to click through a prompt warning you about running it. If you simply click <code>more info</code> -> <code>run anyway</code> it will run.
44+ </small></p>
45+ </div>
46+</div>
47+
48+<style>
49+ .os {
50+ display: flex;
51+ flex-wrap: wrap;
52+ }
53+ .os label {
54+ order: -1;
55+ padding: .5rem;
56+ min-width: 70px;
57+ text-align: center;
58+ cursor: pointer;
59+ }
60+ .os input[type="radio"] {
61+ display: none;
62+ }
63+ .os .tab {
64+ display: none;
65+ margin-top: 1rem;
66+ width: 100%;
67+ max-width: 100%;
68+ }
69+ .os .tab p:first-child {
70+ margin-top: 0;
71+ }
72+ .os .tab p:last-child {
73+ margin-bottom: 0;
74+ }
75+ .os input[type='radio']:checked + label {
76+ font-weight: bold;
77+ background-color: rgba(244,243,241,1);
78+ border-radius: 0.5em;
79+ }
80+ .os input[type='radio']:checked + label + .tab {
81+ display: block;
82+}
83+</style>
84+
85+### Launch a comet
86+
87+A comet serves as a temporary identity for the network. It works just fine for checking out the network, but to download applications and get the full functionality of Urbit ID you’ll need a to get a planet.
88+
89+Start Port and hit the **Start without an ID** button. It'll take a few minutes to spin up the new comet. Once that's finished, click **Launch Ship into Urbit** and you'll be on the network.
90+
91+![](https://media.urbit.org/site/getting-started/getting-started-easy-1.png)
92+
93+<div className="bg-wall-100 p-4 rounded-xl" style="padding-bottom: 1rem;">
94+
95+**Want to combine the simplicity of Port with a permanent Urbit ID?**
96+
97+If you already have a planet, first get your keyfile.
98+
99+Start Port, click the **Boot a fresh ID** option. Give your ship a name, and in the **Shipname** field, enter your planet name, like `~sampel-palnet`. For the **Key File** field, browse to the keyfile, select it, and hit **Continue**.
100+
101+Port will boot your Urbit in a few minutes!
102+
103+For more information on getting a planet, see our [Getting an Urbit ID](/guides/getting-an-urbit-id) guide.
104+
105+</div>
106+
107+### Next steps
108+
109+Learn how to [get around your urbit](/getting-started/get-around-your-urbit).
content/getting-started/fun.mdnew file+204
@@ -0,0 +1,204 @@
1++++
2+title = "Fun"
3+description = "Run Urbit on a server"
4+weight = 2
5++++
6+
7+### Get yourself a planet
8+
9+Here's some of the hard fun work we talked about earlier.
10+
11+There are two ways to get a planet.
12+
13+**A) Ask nicely**
14+
15+Visit the instructions for [launching a temporary comet with Port](/getting-started/easy), get yourself onto the network, find a group, and start conversations with people with planets to spare. Many urbiters are also active on [Twitter](https://twitter.com), where you can also ask around.
16+
17+**B) Buy a planet**
18+
19+There are many markets and individuals selling planets such as [azimuth.shop](https://azimuth.shop), [Networked Subject](https://subject.network), and [Wexpert Systems](https://wexpert.systems) for Ethereum, Bitcoin, and USD respectively.
20+
21+<div className="bg-wall-100 p-4 rounded-xl" style="padding-bottom: 1rem;">
22+
23+**Layer 1 vs Layer 2 planet purchasing**
24+
25+The websites listed in B) sell Layer 2 (L2) planets -- which means they avoid Ethereum’s volatile and expensive gas fees. However, markets such as [OpenSea](https://opensea.io) and many Urbit-specific markets such as [Urbitex](https://urbitex.io) sell planets directly on Ethereum L1, which means they are significantly more expensive.
26+
27+For this reason we generally advise using a L2 planet market, unless you are interested in a very rare sigil or a particular planet name.
28+
29+</div>
30+
31+### Claim your planet
32+
33+An invitation to claim your planet comes in one of two forms.
34+
35+The first is an email invitation with an Urbit ID and a Master Ticket.
36+
37+The second, only recently made available through our [L2 solution](/getting-started/layer-2-for-planets), is an activation code or a link to activate on [Bridge](https://bridge.urbit.org), which can be thought of as an Urbit account management tool.
38+
39+![](https://media.urbit.org/site/getting-started/getting-started-fun-1.png)
40+
41+Clicking a link to activate a planet on Bridge will take you to page which will generate a Master Ticket for you. Follow the instructions which will prompt you to download a copy of your Passport - your Master Ticket, management proxy, and keyfile. Store your Master Ticket and management proxy somewhere safe, hold on to the keyfile, and proceed to the next step.
42+
43+<div className="bg-wall-100 p-4 rounded-xl" style="padding-bottom: 1rem;">
44+
45+**Claiming L1 planets**
46+
47+If you’ve purchased an L1 planet, you won’t need to claim it because you already own it as an NFT. Simply log into Bridge using Metamask or your wallet of choice.
48+
49+</div>
50+
51+### Use Bridge to get your keyfile
52+
53+Now that you have your planet, you can create your keyfile (eg. `sample-palnet.key`), which is the cryptographic signature required to encrypt and decrypt messages on Urbit's P2P network.
54+
55+- **Claimed L2 planets**
56+ If you’ve claimed your L2 Planet then you should already have downloaded your Passport, which contains your Master Ticket and keyfile.
57+
58+- **Master Ticket holders**
59+ If you haven’t downloaded your Passport but have a Master Ticket, then you can simply log in with Bridge using the Master Ticket option with your planet name and Master Ticket password. Click the ID box near the bottom of the page to open the ID page, then click the **Download Passport** button, which contains your keyfile.
60+
61+- **L1 Planet Purchasers**
62+ Log in to Bridge with your Ethereum wallet using Metamask or the wallet of your choice with WalletConnect. Click the “OS” box on the bottom of the page to open the OS page, and then click the **Download Keyfile** button.
63+
64+### Install Urbit via the command line
65+
66+These instructions assume you have access to a **remote Linux system** running on a **VPS or cloud provider** of your choice. If you want to run Urbit locally, whether on Linux, macOS, or Windows, click the appropriate section below.
67+
68+You may also want to see the cloud hosting guide for additional details like setting your domain name and establishing a firewall, but for now, we'll focus on getting you set up as soon as possible.
69+
70+Download Urbit with the following commands:
71+
72+<div id="os" class="os">
73+ <input type="radio" id="macos" name="os" checked>
74+ <label for="macos">MacOS</label>
75+ <div class="tab">
76+
77+```bash
78+mkdir ~/urbit
79+cd ~/urbit
80+curl -JLO https://urbit.org/install/mac/latest
81+tar zxvf ./darwin.tgz --strip=1
82+~/urbit/urbit
83+```
84+
85+ </div>
86+
87+ <input type="radio" id="linux" name="os">
88+ <label for="linux">Linux</label>
89+ <div class="tab">
90+
91+```shell
92+mkdir ~/urbit
93+cd ~/urbit
94+wget --content-disposition https://urbit.org/install/linux64/latest
95+tar zxvf ./linux64.tgz --strip=1
96+~/urbit/urbit
97+```
98+
99+Linux users may need to run this command in another terminal window to access your Urbit on port 80:
100+
101+```shell
102+sudo apt-get install libcap2-bin
103+sudo setcap 'cap_net_bind_service=+ep' ~/urbit/urbit
104+```
105+
106+</div>
107+
108+ <input type="radio" id="windows" name="os">
109+ <label for="windows">Windows</label>
110+ <div class="tab">
111+
112+```winbatch
113+mkdir %USERPROFILE%\urbit
114+cd %USERPROFILE%\urbit
115+curl -JLO https://urbit.org/install/windows/latest
116+tar zxvf .\windows.tgz --strip=1
117+%USERPROFILE%\urbit\urbit
118+```
119+
120+> Windows 10 build 17063 and later includes the familiar `curl` and `tar` command-line tools.
121+
122+</div>
123+</div>
124+
125+Next, transfer `your-keyfile.key` to your server using scp or an FTP client, then move it to the `~/urbit` directory you created in the last step.
126+
127+Now you can run Urbit for the first time. Run the below command, replacing ames_port with a public port number between 49152 to 65535, sampel-palnet with the name of your planet, and sampel-palnet.key with the name of your keyfile.
128+
129+```sh
130+./urbit -p ames_port -w sampel-palnet -k ./sampel-palnet.key
131+```
132+
133+Arvo, the Urbit OS, now creates a directory called `sampel-palnet/` and begins booting your planet and establishing connections with the P2P network. When that's finished, you'll see Dojo, the Urbit command line:
134+
135+```
136+~sampel-palnet:dojo>
137+```
138+
139+Welcome to Urbit! You can skip ahead to [log in](#log-in), or stick around for some tips.
140+
141+### Tips
142+
143+Check out the [cloud hosting guide](using/running/hosting) for tips on improving the environment for Urbit, with a particular focus on establishing your domain name and using SSL for encryption.
144+
145+Shut down your planet by typing Ctrl+D into Dojo.
146+
147+To boot your planet up again, run the following command, once again replacing `ames_port` with the port you used previously, and now referencing your planet's folder.
148+
149+Your planet's folder, `sampel-palnet/`, is called your pier, and it holds all your data. If you want to migrate your data from one system to another, you must bring your pier.
150+
151+You should also delete your keyfile from your remote system to prevent yourself from using the same key twice, which will cause communication problems with other planets.
152+
153+```sh
154+rm ./your-keyfile.key
155+```
156+
157+### Log in
158+
159+First, use your browser to navigate to the URL+port where your ship is running. This could be an IP address or a fully-qualified domain name, depending on how you set yours up.
160+
161+Instead of a static password, Urbit uses an Access Key, which is given by your ship itself.
162+
163+Open up the Urbit CLI again if it's not still running, and enter +code. The output is your Access Key, which you need to copy and paste into your browser. Click Continue to finish authentication and log in.
164+
165+### Next steps
166+
167+Learn how to [get around your urbit](/getting-started/getting-around-your-urbit).
168+
169+<style>
170+ .os {
171+ display: flex;
172+ flex-wrap: wrap;
173+ }
174+ .os label {
175+ order: -1;
176+ padding: .5rem;
177+ min-width: 70px;
178+ text-align: center;
179+ cursor: pointer;
180+ }
181+ .os input[type="radio"] {
182+ display: none;
183+ }
184+ .os .tab {
185+ display: none;
186+ margin-top: 1rem;
187+ width: 100%;
188+ max-width: 100%;
189+ }
190+ .os .tab p:first-child {
191+ margin-top: 0;
192+ }
193+ .os .tab p:last-child {
194+ margin-bottom: 0;
195+ }
196+ .os input[type='radio']:checked + label {
197+ font-weight: bold;
198+ background-color: rgba(244,243,241,1);
199+ border-radius: 0.5em;
200+ }
201+ .os input[type='radio']:checked + label + .tab {
202+ display: block;
203+}
204+</style>
content/getting-started/getting-around-your-urbit.mdnew file+78
@@ -0,0 +1,78 @@
1++++
2+title = "Getting around your urbit"
3+weight = 4
4++++
5+
6+### Get oriented
7+
8+After you've logged into your Urbit for the first time, you're officially an Urbiter! You've unlocked the entire Urbit network with your newly-minted ID — the key to your new digital life.
9+
10+![](https://media.urbit.org/site/getting-started/getting-started-getting-around-1.png)
11+
12+You'll see your Home and a few pre-installed applications: Terminal, Groups, and Bitcoin. More on them in a moment.
13+
14+Above those are buttons to view System Preferences and Help and Support and check out notifications for newly-installed or recently-updated applications, respectively. The search bar helps you surface applications you already have installed, or discover developers and applications across the Urbit network.
15+
16+You'll likely want to focus on finding and joining new communities, which you can do with the **Groups** app. Click on the box to open the application.
17+
18+### Join a few groups with fellow Urbiters
19+
20+No two people will ever have the same experience on Urbit. That depends entirely on who you find and where they invite you to join them. But we can set you down a good path.
21+
22+With Groups open, you'll see three boxes for **My Channels**, your local weather, and a stylized clock. You can dig into those later, but let's focus on joining new communities, which is likely one of the reasons you wanted to try out Urbit in the first place.
23+
24+Click on Join Group, and in that modal, enter [~bitbet-bolbel/urbit-community](/groups/~bitbet-bolbel/urbit-community) — the official Urbit community. You can either automatically join all channels by clicking the Join all channels checkbox, or leave it blank and hit Join Group right away. Your Urbit will connect to the P2P network and download information about the group, like a list of all its participants. When that's finished, click **View Group**.
25+
26+You're now looking at a single group and all of its channels. If you didn't choose to join all channels right away, click on an individual channel and then **Join Channel**, which immediately opens the feed of latest messages.
27+
28+Here are a few more useful groups to join:
29+
30+- [`~rondev/group-discovery`](/groups/~rondev/group-discovery): A group for finding other groups.
31+- [`~middev/the-forge`](/groups/~middev/the-forge): A group for sharing, discussing, and discovering new Urbit applications.
32+- [`~hocwyn-tipwex/uqbar-event-horizon`](/groups/~hocwyn-tipwex/uqbar-event-horizon): A community around [Uqbar](https://uqbar.network), a company creating applications and experiences on top of Urbit — notably EScape, which is an alternative to the default Groups application for joining communities and messaging with other Urbiters.
33+
34+### Get more Urbit apps
35+
36+Groups are great, but Urbit goes way deeper with apps that are developed specifically for Urbit and use P2P networking for everything.
37+
38+We'll use [Canvas](/applications/~dister-norsyr-torryn/canvas) — a collaborative app for creating pixel art with others — as an example to show the process.
39+
40+Head back to your Urbit's home — the URL you used to log in and view your preinstalled apps. From there, click on the search bar and enter `~dister-norsyr-torryn/canvas`. Click on the first result, which shows you details about the developer, the license, a website for more information, and when the app was last updated.
41+
42+Click **Get App**, then **Get "Canvas"** to continue. Your Urbit gets to work, and once installation is finished, click Open App to see it in action.
43+
44+Some popular apps to get things moving:
45+
46+- [EScape](/applications/~dister-fabnev-hinmur/escape): An alternative UI to the core groups, communities, and messaging capabilities in Urbit.
47+- [Studio](/applications/~tirrel/studio): Tools for making money on the Urbit network.
48+- [Wrdu](/applications/~magped-magped-rabsef-bicrym/wrdu): A Wordle clone.
49+
50+### Get help
51+
52+If you need help getting around Urbit, the best place to go is the official Urbit community: [`~bitbet-bolbel/urbit-community`](/groups/~bitbet-bolbel/urbit-community). Those in the Help channel are willing to troubleshoot or provide links to resources to help you get out of a jam.
53+
54+That community isn't for every support request, however. If your question involves an app, you're better served reaching out to the developer — for example, if you have an issue with EScape's notifications feature, reach out to Uqbar in [`~hocwyn-tipwex/uqbar-event-horizon`](/groups/~hocwyn-tipwex/uqbar-event-horizon).
55+
56+If you're having trouble with your planet or the hosting provider that's running your ship, try their support, as they'll have more context and resources to help solve your issue.
57+
58+And if you can't get through this guide and launch into Urbit, you may have luck with the [Urbit Live community](https://t.me/UrbitLiveGroup) on Telegram.
59+
60+### What's next?
61+
62+You made it! You did the work and now have your Final Computer.
63+
64+What you do with it is up to you. Where you go from here is up to you. No two experiences on Urbit will be the same, so we encourage you to follow your own. Explore. Discover! Get lost and find the people who make you feel like you're not lost any more.
65+
66+Still need some bumpers to guide you along the way?
67+
68+**Learn more about using Urbit**: Check out the [User's Manual](/using/).
69+
70+**Get updates about Urbit**: [Subscribe](https://urbit.us11.list-manage.com/subscribe/post?u=972a03db9e0c6c25bb58de8c8&id=be143888d2) to the Urbit Newsletter for new blog posts and events from one of the primary organizations responsible for Urbit development.
71+
72+**Join an event or meetup**: Many of the organizations and people behind Urbit host virtual and in-person events on a regular basis — check out the latest on our [Events feed](/events/).
73+
74+**Learn how to build on Urbit**: If you're the kind of person who wants to build applications directly for discerning communities with built-in identity and networking primitives, or even jump into the Urbit kernel's core, we have the most phenomenally-comprehensive information to get you started.
75+
76+- Read the [Development Docs](/docs/).
77+- Check out the development-driven [Getting Started guide](/docs/development/develop).
78+- Join [Hoon School Live (HSL)](https://hooniversity.org), the cohort-driven course that teaches you Hoon, with the goal of getting you comfortable writing generators, working with core concepts, using the standard library, and distributing code using desks.
content/getting-started/hosted.mdnew file+23
@@ -0,0 +1,23 @@
1++++
2+title = "Hosted"
3+description = "Run Urbit on a managed service"
4+weight = 3
5++++
6+
7+### 1. Select a hosting provider
8+
9+Hosting providers can sell you a planet and manage the hosting for you for a regular fee. We recommend [Urbit Host](https://urbithost.com) (not directly affiliated with Urbit.org) for quickly acquiring a planet and the hosting required to make your Urbit experience accessible from anywhere.
10+
11+Two important points about hosting providers:
12+
13+- Because the provider has access to the resources that run your Urbit experience, you must trust them with your data.
14+
15+- Urbit has portable data, so you should be able to work with a hosting provider to download all your data and boot up elsewhere if you choose to migrate or start self-hosting.
16+
17+### 2. Log in
18+
19+The exact steps for logging into your Urbit will depend on your hosting provider's infrastructure and the flow they've developed. If you have questions about logging into your hosted Urbit ship, contact their support.
20+
21+### Next steps
22+
23+Learn how to [get around your urbit](/getting-started/getting-around-your-urbit).
content/getting-started/layer-2-for-planets.md+1−1
@@ -1,6 +1,6 @@
11+++
22title = "Layer 2 for planets"
3−weight = 3
3+weight = 4
44description = "Getting started with a permanent Urbit identity."
55+++
66
content/getting-started/planet.mddeleted−216
@@ -1,216 +0,0 @@
1−+++
2−title = "Setting up your urbit"
3−weight = 2
4−description = "Getting started with a permanent Urbit identity."
5−+++
6−
7−A planet is a permanent Urbit identity. Like all Urbit identities, they can
8−never be taken away from you. Unlike comets which are free, planets are designed
9−for use well into the future. If you're not yet familiar with the Urbit network
10−and are looking to try it out with a free Comet, are looking to purchase a
11−planet, or are looking for an easy hosting solution, see the [Getting Started
12−guide](/getting-started/) instead. This guide is for those who have already
13−obtained a planet and want to get it running for the first time.
14−
15−## Step 1: Keyfile {#keyfile}
16−
17−The Urbit runtime needs a planet's keyfile in order to boot it up for the first
18−time. The keyfile contains the private cryptographic keys necessary for a planet
19−to sign messages it sends and decrypt messages it receives. These keys are
20−separate from either your Master Ticket (if applicable) or the Ethereum keys
21−used to manage your Urbit ID. The method to obtain your planet's keyfile differs
22−slightly, depending on whether you're on a Master Ticket or use an alternative
23−custody method like a Metamask wallet, hardware wallet, etc.
24−
25−### Master Ticket
26−
27−A Master Ticket is like a paper wallet for your planet. From the planet name and
28−Master Ticket password, [Bridge](https://bridge.urbit.org) can derive everything
29−necessary to manage your Urbit ID, such as Ethereum addresses, networking keys,
30−and so on.
31−
32−If you received an email invite to Urbit or were otherwise given an invite URL
33−and claimed your planet that way, you'll likely be on a Master Ticket. To get
34−the keyfile, you can look in the `.zip` file you downloaded when claiming your
35−planet - it'll be named `sampel-palnet-1.key` (except with your planet rather
36−than `sampel-palnet`).
37−
38−If you have misplaced that `.key` file, you can also download it from
39−[Bridge](https://bridge.urbit.org). First, login to Bridge with your planet name
40−and Master Ticket password. Once in, click on `OS` and then `Download Arvo Keyfile`.
41−
42−### Other methods
43−
44−If you bought your planet from a third party such as
45−[OpenSea](https://opensea.io), [urbit.live](#https://urbit.live), or another
46−[third party](/getting-started#get-a-planet), or otherwise if someone
47−transferred the planet to an Ethereum address you own, you will probably not be
48−on a Master Ticket. This is perfectly fine and you don't need to transfer your
49−planet to a Master Ticket if you don't want to. The one small difference,
50−though, is that Bridge will not have automatically derived your keyfile.
51−Instead, you'll need to login to [Bridge](https://bridge.urbit.org) and perform
52−a transaction to set your Networking keys.
53−
54−When you visit [Bridge](https://bridge.urbit.org), you'll need to select the
55−login option that says `Metamask, Mnemonic, Hardware Wallet...`, and it will
56−have a list of options:
57−
58−- `Metamask` - If your planet is owned by your Metamask wallet, select this. It
59− may prompt you to login to Metamask, then it will ask you to sign the `Bridge Authentication Token`. Once signed, you'll be logged into Bridge.
60−
61−- `Ledger` and `Trezor` - If your planet is owned by one of these hardware
62− wallets, select the appropriate one and follow its connection process.
63−
64−- `WalletConnect` - If your planet is owned by a wallet which supports the
65− WalletConnect protocol, select this and either scan the QR code or select one
66− of the desktop options.
67−
68−- `Mnemonic`, `Ethereum Private Key` and `Ethereum Keystore` - If your planet is
69− owned by another Ethereum wallet which does not support WalletConnect, you can
70− still login with one of these. `Mnemonic` lets you paste in the BIP39 mnemonic
71− seed phrase (a series of random words) for your wallet. `Ethereum Private Key`, as the name suggests, lets you paste in the private key of the Ethereum
72− address which owns your planet. `Ethereum Keystore` lets you upload an
73− Ethereum keystore file and specify its password for decryption.
74−
75−<small>Note: Bridge runs purely in your local browser, it does not transfer any
76−secrets across the network or store any secrets on a remote server. If you'd
77−prefer though, it's also possible to run the Bridge software locally (though
78−it's a little more more complicated), see the [Readme in the Bridge Github
79−repo](https://github.com/urbit/bridge) for details.</small>
80−
81−If you've been transferred a planet and not yet accepted it, you'll need to do
82−that first (you can skip this bit if you've already done it). Having logged in
83−with one of the methods described above, you'll see see an `Incoming Transfer`
84−request. Click `Accept`, then click `Generate & Sign Transaction` (This will
85−require some ETH for transaction fees). Once the transaction's complete, click
86−on `return`.
87−
88−Now that you're logged in to Bridge and have your planet, you can set the
89−networking keys. From the main screen for your planet, hit `OS` and then
90−`Initialize Networking Keys`. If the planet has never been spawned before, you
91−can leave `Breach Continuity` unchecked. Send the transaction (this will require
92−some ETH for transaction fees). Once complete, you can click `Download Arvo Keyfile` and save the `.key` file on your computer.
93−
94−## Step 2: Install
95−
96−Urbit must run on an existing computer somewhere. Some users run their planet on
97−their personal computer, but we recommend eventually using a cloud service
98−(Digital Ocean, Linode, etc) because it allows your planet to be accessed from
99−anywhere on multiple devices. Hosting your planet in the cloud also allows it to
100−always be online and ready for automatic updates. You are welcome to run from
101−your personal computer and switch to the cloud later...all without losing any
102−data!
103−
104−### Port
105−
106−Port is an Urbit GUI application available for MacOS, Linux and Windows. This
107−option is much easier but runs locally rather than in the cloud. Note that if
108−you have your planet in the cloud, Port can also be used as a client to connect
109−to your planet's web interface. [You can download Port
110−here](/getting-started#port).
111−
112−### Command line
113−
114−Running Urbit from the command line is suitable for either a cloud installation
115−or a local installation. If you're comfortable with the command line and would
116−like greater control over the Urbit virtual machine, this is the right option.
117−The Urbit runtime is available for Linux, MacOS and Windows.
118−Additionally, there are guides for [hosting your planet on
119−DigitalOcean](/using/running/hosting) and [hosting your planet on Linode
120−(external
121−link)](https://jeremytunnell.com/2021/01/09/how-to-install-urbit-on-a-linode-vps),
122−though most other cloud providers should be fine as well. [See here for download
123−and installation instructions](/getting-started/cli).
124−
125−## Step 3: Boot
126−
127−### Port
128−
129−If you've decided to use Port, booting is very simple. Just start up Port and select `Boot a fresh ID`. Then, give your ship a name in the `Name` field - this is just for convenience, a label used locally by Port to identify your planet. In the `Shipname` field, just enter your planet name like `~sampel-palnet`. Lastly, for the `Key File`, you can browse to the keyfile you downloaded in [Step 2](#keyfile), select it, and hit `Continue`. It'll take a few minutes to boot up your ship, and then you should be good to go.
130−
131−**Important:** once a key has been used to boot a planet onto the network, it
132−cannot be used to boot that planet again later - doing so will cause
133−communication problems with other planets. For this reason you should **delete
134−the keyfile from your machine once your planet has booted successfully**. If you
135−do use the same key twice, you'll need to reset your planet to restore its
136−functionality.
137−
138−### Command line
139−
140−For other ships on the network to communicate with your ship, the computer it's
141−running on needs to be able to receive inbound UDP traffic. Therefore, it's
142−important when running your ship locally to use the `-p ames_port` flag (replace
143−`ames_port` with a public port number from 49152 to 65535) to specify on which
144−port you'll receive UDP traffic, and to forward inbound UDP traffic arriving at
145−your router on that port to your computer.
146−
147−Navigate to your `urbit` directory. Open your keyfile (it is just a text file)
148−and copy the key inside to the clipboard. Paste it into the following command,
149−except with `ames_port` replaced with a public port number, and `sampel-palnet`
150−replaced by the name of your planet. **Do not include the tilde in your planet
151−name.**
152−
153−```sh
154−./urbit -p ames_port -w sampel-palnet -G rAnDoMkEy
155−```
156−
157−Or you can copy the keyfile into the current directory and run:
158−
159−```sh
160−./urbit -p ames_port -w sampel-palnet -k ./my-planet.key
161−```
162−
163−Either command will create a directory called `sampel-palnet/` and begin booting
164−your planet. It may take a few minutes.
165−
166−When your planet is finished booting, you will see `~sampel-palnet:dojo>` (Dojo:
167−the Urbit command line).
168−
169−To log into [Landscape](/docs/glossary/landscape), check out the directions
170−[here](/getting-started/#using-landscape).
171−
172−To shut down your planet, use `Ctrl-D`.
173−
174−To start your planet up again, run the following from your `urbit` directory,
175−with `ames_port` replaced with the public port number you used when first
176−booting your ship.
177−
178−```sh
179−./urbit -p ames_port sampel-palnet
180−```
181−
182−Note that `sampel-palnet/` is the path of a folder, which we just created in
183−your `urbit` directory. This folder is called your planet's **pier**, and it
184−holds all of your data.
185−
186−Never boot multiple instances of your planet at the same time. You can prevent
187−this from happening on accident by only ever keeping a single copy of your pier.
188−
189−**Important:** once a key has been used to boot a planet onto the network, it
190−cannot be used to boot that planet again later - doing so will cause
191−communication problems with other planets. For this reason you should **delete
192−the keyfile from your machine once your planet has booted successfully**. If you
193−do use the same key twice, you'll need to reset your planet to restore its
194−functionality.
195−
196−Delete the keyfile with the command below:
197−
198−```sh
199−rm ./my-planet.key
200−```
201−
202−## Next Steps
203−
204−Once you've got your ship up and running, you might like to join the official Urbit Community group and say hello. Just click on the `Groups` app and it will open Urbit's communications suite. In Groups, hit `Join Group` and enter `~bitbet-bolbel/urbit-community`. Once joined, a new tile for the group will appear on the Groups home screen. Open that, click on the `General` channel in the sidebar, and hit `Join Channel`. It'll take a couple of minutes to download the chat history, then you'll be able to post a message.
205−
206−If you haven't already done so, we recommend spending a few minutes reading
207−[Understanding Urbit](/understanding-urbit) to get acquainted with the project.
208−Then once you've been become acquainted with your ship and explored the network
209−for awhile, consider checking out the [User's Manual](/using) which provides
210−guidance and reference material for operating your ship, as well as explanations
211−for Urbit concepts everyone should eventually learn.
212−
213−If you're interested in developing on Urbit, check out:
214−
215−- [Learn to Develop on Urbit](/docs/development/develop): Learn how to
216− contribute to or develop on Urbit.
pages/getting-started/[[...slug]].js+132
@@ -93,6 +93,7 @@ export default function UsingLayout({ posts, data, params, search, markdown }) {
9393 <ContentArea
9494 breadcrumbs={breadcrumbs(posts, params.slug?.slice(0, -1) || "")}
9595 title={data.title}
96+ description={data.description}
9697 search={search}
9798 section={"Getting Started"}
9899 params={params}
@@ -102,12 +103,143 @@ export default function UsingLayout({ posts, data, params, search, markdown }) {
102103 dangerouslySetInnerHTML={{ __html: decode(markdown) }}
103104 ></article>
104105 </div>
106+ {!params.slug && <LaunchCards />}
105107 </ContentArea>
106108 </div>
107109 </>
108110 );
109111}
110112
113+function LaunchCards() {
114+ const info = [
115+ {
116+ title: "Easy",
117+ subtitle: "Deploy Urbit on your local system",
118+ points: [
119+ "Zero cost to you",
120+ "Set up in minutes using a desktop GUI",
121+ "Not a permanent way to use Urbit",
122+ ],
123+ svg: (
124+ <svg
125+ width="35"
126+ height="49"
127+ viewBox="0 0 35 49"
128+ fill="none"
129+ xmlns="http://www.w3.org/2000/svg"
130+ >
131+ <path
132+ d="M7.43609 18.2477H10.856V2.43515C10.8608 1.09 11.9608 1.65662e-05 13.3153 1.65662e-05H21.4235C22.0767 -0.00236832 22.7012 0.252829 23.1623 0.71078C23.6234 1.16632 23.8828 1.7888 23.8828 2.43515V18.2477H27.3123C28.3714 18.2453 29.3393 18.8535 29.7883 19.8075C30.2399 20.7639 30.091 21.8896 29.4089 22.6982L19.4734 34.5206C18.9523 35.1359 18.1837 35.4937 17.3744 35.4937C16.565 35.4937 15.7965 35.136 15.2753 34.5206L5.3325 22.6982C4.64802 21.8896 4.50151 20.7591 4.95304 19.8051C5.40457 18.8511 6.37481 18.2429 7.43635 18.2477H7.43609Z"
133+ fill="#24221E"
134+ />
135+ <path
136+ d="M0 46.4217V44.5866C0.00657627 43.5411 0.854839 42.6928 1.90369 42.6928H32.8365C33.8853 42.6928 34.7336 43.5411 34.7402 44.5866V46.4217C34.7402 47.4738 33.8886 48.3287 32.8365 48.3352H1.90369C0.851556 48.3286 0 47.4738 0 46.4217Z"
137+ fill="#24221E"
138+ />
139+ </svg>
140+ ),
141+ href: "/getting-started/easy",
142+ },
143+ {
144+ title: "Fun",
145+ subtitle: "Deploy Urbit on a cloud/VPS provider",
146+ points: [
147+ "Self-host and own your data",
148+ "Portable identity and accessibility from anywhere",
149+ "Requires investment in a planet (one-time) and cloud service (monthly)",
150+ "Requires Linux proficiency",
151+ ],
152+ svg: (
153+ <svg
154+ width="50"
155+ height="50"
156+ viewBox="0 0 61 45"
157+ fill="none"
158+ xmlns="http://www.w3.org/2000/svg"
159+ >
160+ <path
161+ fill-rule="evenodd"
162+ clip-rule="evenodd"
163+ d="M49.2551 15.2806C49.5291 16.4304 50.4122 17.3353 51.5533 17.636H51.5527C54.4975 18.5808 57.035 20.4998 58.7427 23.0815C60.4504 25.6633 61.227 28.7507 60.9424 31.8327C60.5301 35.2182 58.8836 38.3348 56.3195 40.5811C53.7554 42.8274 50.4492 44.0491 47.0418 44.0118H35.4601V35.1486H38.0641C38.8723 35.1521 39.6109 34.7022 39.9547 33.9966C40.2985 33.2909 40.1869 32.4547 39.6658 31.8567L32.0952 23.1122C31.6983 22.657 31.1132 22.3924 30.4969 22.3924C29.8807 22.3924 29.2955 22.657 28.8987 23.1122L21.3337 31.8567C20.8144 32.4547 20.701 33.2874 21.0448 33.9948C21.3867 34.7005 22.1237 35.1503 22.9301 35.1486H25.5414V44.0118H13.9581C10.5508 44.049 7.24457 42.8274 4.68045 40.5811C2.11627 38.3347 0.469828 35.2181 0.057545 31.8327C-0.227016 28.7505 0.549654 25.6631 2.25729 23.0815C3.9652 20.4998 6.50276 18.5808 9.44724 17.636C10.5883 17.3353 11.4714 16.4304 11.7454 15.2806C12.9452 9.48101 16.7593 4.5598 22.0737 1.9542C27.3911 -0.651399 33.6097 -0.651399 38.9268 1.9542C44.2412 4.56034 48.0555 9.48122 49.2551 15.2806Z"
164+ fill="#24221E"
165+ />
166+ </svg>
167+ ),
168+ href: "/getting-started/fun",
169+ },
170+ {
171+ title: "Hosted",
172+ subtitle: "Deploy Urbit on a managed service",
173+ points: [
174+ "Streamlined setup for ownership and identity",
175+ "No technical proficiency required",
176+ "Need to trust your provider",
177+ "Requires monthly investment",
178+ ],
179+ svg: (
180+ <svg
181+ width="50"
182+ height="50"
183+ viewBox="0 0 50 50"
184+ fill="none"
185+ xmlns="http://www.w3.org/2000/svg"
186+ >
187+ <rect width="50" height="23.1481" rx="10" fill="#24221E" />
188+ <rect
189+ y="26.8519"
190+ width="50"
191+ height="23.1481"
192+ rx="10"
193+ fill="#24221E"
194+ />
195+ <ellipse
196+ cx="40.4167"
197+ cy="11.5741"
198+ rx="2.91667"
199+ ry="3.24074"
200+ fill="white"
201+ />
202+ <ellipse
203+ cx="40.4167"
204+ cy="38.4259"
205+ rx="2.91667"
206+ ry="3.24074"
207+ fill="white"
208+ />
209+ </svg>
210+ ),
211+ href: "/getting-started/hosting",
212+ },
213+ ];
214+ return (
215+ <div className="flex flex-col space-y-8 mt-8">
216+ {info.map((e) => {
217+ return (
218+ <div className="py-8 bg-wall-100 rounded-xl">
219+ <div className="flex">
220+ <div className="px-8 justify-center flex">{e.svg}</div>
221+ <div className="flex flex-col">
222+ <h4>{e.title}</h4>
223+ <p className="font-light text-lg">{e.subtitle}</p>
224+ <ul className="mx-8 mt-2 list-disc text-sm flex flex-col space-y-2">
225+ {e.points.map((point) => {
226+ return <li>{point}</li>;
227+ })}
228+ </ul>
229+ <Link href={e.href} passHref>
230+ <a className="button-lg max-w-fit text-white mt-4 bg-green-400">
231+ Get Started
232+ </a>
233+ </Link>
234+ </div>
235+ </div>
236+ </div>
237+ );
238+ })}
239+ </div>
240+ );
241+}
242+
111243export async function getStaticProps({ params }) {
112244 const posts = GettingStartedTree;
113245