Vagrant Homelab Desktop


Provide a method of reproducible graphical development environments based on Linux. This repository provides a base Homelab Desktop environment, sandboxed on your local computer.

Getting Started

You can use this locally with vagrant up, calling as such:

vagrant --name=mydesktop up

However It is recommended to use the script for the first run to ensure all necessary arguments are provided. The provided arguments creates a settings.yaml, storing the settings for the machine. You can create the machine by calling:

sh -n mydesktop -d ubuntu

If you want more information about the script, you can do so by calling:

sh -h


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.


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.