From acc762d8c9eac6389f19c0c5f16656b4509c22ef Mon Sep 17 00:00:00 2001 From: Riyaz Faizullabhoy Date: Mon, 13 Mar 2017 10:46:58 +0000 Subject: [PATCH] docs: update README formatting and some additional info Signed-off-by: Riyaz Faizullabhoy --- README.md | 30 ++++++++++++++++++++++++------ 1 file changed, 24 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 8cb777a3d..69c8f6b4a 100644 --- a/README.md +++ b/README.md @@ -1,14 +1,32 @@ +# Moby + Moby, a toolkit for custom Linux distributions +## Getting Started + +### Build + Simple build instructions: use `make` to build. +This will build the Moby customisation tool and a Moby initrd image. -`make qemu` will boot up a sample in qemu in a container; on OSX `make hyperkit` will -boot up in hyperkit. `make test` or `make hyperkit-test` will run the test suite. +#### Requirements: -Requires GNU `make`, GNU or BSD `tar` (not Busybox tar) and Docker to build. +- GNU `make` +- GNU or BSD `tar` (not Busybox tar) +- Docker -To customise, copy or modify the `moby.yaml` and then run `./bin/moby file.yaml` to -generate. You can run the output with `./scripts/qemu.sh` or `./scripts/hyperkit.sh`. +### Booting and Testing + +- `make qemu` will boot up a sample Moby in qemu in a container +- on OSX: `make hyperkit` will boot up Moby in hyperkit, and also download hyperkit and vpnkit binaries for later use +- `make test` or `make hyperkit-test` will run the test suite + +## Customise + +To customise, copy or modify the [`moby.yaml`](moby.yaml) to your own `file.yaml` and then run `./bin/moby file.yaml` to +generate its specified output. You can run the output with `./scripts/qemu.sh` or `./scripts/hyperkit.sh`. + +### Yaml Specification The Yaml format is loosely based on Docker Compose: @@ -20,6 +38,6 @@ The Yaml format is loosely based on Docker Compose: - `outputs` are descriptions of what to build, such as ISOs. For the images, you can specify the configuration much like Compose, with some changes, eg `capabilities` must be specified in full, rather than `add` and `drop`, and -there are no voluems only `binds`. +there are no volumes only `binds`. The config is liable to be changed, eg there are missing features (specification of kernel command line, more options etc).