diff --git a/src/wiki.ml b/src/wiki.ml index 2b2184059..35b0fd778 100644 --- a/src/wiki.ml +++ b/src/wiki.ml @@ -434,7 +434,7 @@ let entries = [ categories = ["concurrency","threads"]; }; - { updated = date (2013, 08, 10, 15, 00); + { updated = date (2013, 12, 09, 12, 00); author = mort; (* ++ vb -- need multiple author support *) subject = "Installation"; body = File "install.md"; @@ -458,7 +458,7 @@ let entries = [ categories = ["overview","usage"]; }; - { updated = date (2013, 08, 11, 15, 00); + { updated = date (2013, 12, 09, 12, 00); author = mort; subject = "Hello Mirage World"; body = File "hello-world.md"; diff --git a/tmpl/wiki/hello-world.md b/tmpl/wiki/hello-world.md index 6696c82d5..b48e58472 100644 --- a/tmpl/wiki/hello-world.md +++ b/tmpl/wiki/hello-world.md @@ -9,7 +9,20 @@ The examples below are in the [`mirage-skeleton` repository](http://github.com/m !! First Steps: Hello World! -As a first step, let's build and run the Mirage "Hello World" unikernel -- this will print `Hello\\nWorld\\n` 5 times before terminating. +As a first step, let's build and run the Mirage "Hello World" unikernel -- this will print `hello\\nworld\\n` 5 times before terminating: + +{{ + hello + world + hello + world + hello + world + hello + world + hello + world +}} First, let's look at the code: @@ -68,6 +81,12 @@ Unpacking the `Makefile` this translates to: $ mirage run basic/config.ml ## run }} +Or, as `mirage` knows that it must first `configure` and then `build` before running, simply execute `make basic-run` which unpacks to: + +{{ + $ mirage run basic/config.ml +}} + If you are on a 64-bit Linux system able to build Xen images, simply change `--unix` for `--xen` to build a Xen VM: {{ diff --git a/tmpl/wiki/index.md b/tmpl/wiki/index.md index c617c500d..1805887b2 100644 --- a/tmpl/wiki/index.md +++ b/tmpl/wiki/index.md @@ -8,8 +8,6 @@ Mirage is still in pre-alpha stage, but the infrastructure you see here is self- *Usage* * [Installation](/wiki/install) -* [Building the Mirage Web](/wiki/mirage-www) -* [Booting Mirage in the cloud](/wiki/xen-boot) * [Hello Mirage World](/wiki/hello-world) * [Maintaining OPAM](/wiki/opam) diff --git a/tmpl/wiki/install.md b/tmpl/wiki/install.md index d87e42487..9473bf220 100644 --- a/tmpl/wiki/install.md +++ b/tmpl/wiki/install.md @@ -1,4 +1,4 @@ -Mirage consists of a set of OCaml libraries that link with a runtime to form either a standalone Xen operating system or a normal UNIX binary. These libraries are managed via the [OPAM](http://opam.ocamlpro.com) tool. After describing Mirage's system requirements, we will introduce the basics of OPAM and setting up for Mirage. +Mirage consists of a set of OCaml libraries that link with a runtime to form either a standalone Xen operating system or a normal UNIX binary. These libraries are managed via the [OPAM](http://opam.ocaml.org) tool. After describing Mirage's system requirements, we will introduce the basics of OPAM and setting up for Mirage. !!Requirements @@ -20,7 +20,7 @@ Also note that the `mirage` configuration and deployment tool relies on the `xl` !! Using OPAM -We use OPAM to manage OCaml compiler and library installations. It tracks library versions across upgrades, and will recompile dependencies automatically if they get out of date. Please refer to OPAM [documentation](https://opam.ocamlpro.com) if you want to know more, but we will cover the basics to get you started here. Install OPAM 1.1+ for your operating system by following its [Quick Install Guide](http://opam.ocamlpro.com/doc/Quick_Install.html). +We use OPAM to manage OCaml compiler and library installations. It tracks library versions across upgrades, and will recompile dependencies automatically if they get out of date. Please refer to OPAM [documentation](https://opam.ocaml.org) if you want to know more, but we will cover the basics to get you started here. Install OPAM 1.1+ for your operating system by following its [Quick Install Guide](http://opam.ocaml.org/doc/Quick_Install.html). All the OPAM state is held in the `.opam` directory in your home directory, including compiler installations. You should never need to switch to a root user to install packages. Package listings are obtained through `remote` sources, which defaults to the contents of [github.com/OCamlPro/opam-repository](http://github.com/OCamlPro/opam-repository). After installation, `opam update -u` refreshes the package list and recompile packages to the latest versions. @@ -49,4 +49,4 @@ opam install mirage will install [Mirage](https://github.com/mirage/mirage)! -That's it. You now have everything required to start developing Mirage unikernels that will run either as POSIX processes or as Xen VMs using the Mirage network stack. Next, why not try [building a Mirage `hello world`](/wiki/hello-world)? +That's it. You now have everything required to start developing Mirage unikernels that will run either as POSIX processes or as Xen VMs using the Mirage network stack. Next, why not try [building a Mirage *hello world*](/wiki/hello-world)?