Vagrant Linux Desktop
Summary
Provide a method of reproducible graphical development environments based on Linux. This repository provides a base Linux Desktop environment, sandboxed on your local computer.
Getting Started
You can use this locally with vagrant up, calling as such:
vagrant --name=mydesktop --file=desktop.yaml up
However It is recommended to use the script create.sh for the first run to ensure all necessary arguments are provided. The provided arguments requires a settings.yaml, storing the settings for the machine. You can see an example of one in tools/simple.yaml. You can create the machine by calling:
sh create.sh -n mydesktop -d ubuntu
If you want more information about the script create.sh, you can do so by calling:
sh create.sh -h
Parameters
The parameters are used in the calling of vagrant up, primarily as vagrant [OPTIONS] up. After provisioning the environment, a settings file (setting.yaml) is created, which stores the provided parameters.
| Name | Type | Description |
|---|---|---|
| name | string | Name of the provisioned desktop environment |
| desktop | filename | The name of the desktop provisioning script. These scripts are present in packaging/environments
. |
The vagrant environment is based on the bento/ubuntu images. If the timezone is not set, the provision script will attempt to auto-detect the timezone using tzupdate
.
Settings
The following are arguments to the settings.yaml file:
| Name | Type | Description |
|---|---|---|
| name | string | Name of the provisioned desktop environment |
| box | vagrant-box | The name of the underlying vagrant box |
| path | dirname | The path to the .vagrant directory |
| desktop | string | The name of the desktop provisioning script |
| logs | dirname | The directory to dump logs files |
| synced_folders | (host: directory, guest: directory)[] | A collection of syneced folders. |
An example yaml is included below:
name: lab
box: ubuntu/trusty64
path: "."
desktop: ubuntu-minimal
logs: "log_dir"
synced_folders:
- host: "../"
guest: "/media/vagrant"
Acknowledgements
The project icon is retrieved from the Noun Project . The original source material has been altered for the purposes of the project. The icon is used under the terms of the Public Domain .
The project icon is by Maxi Koichi from the Noun Project .