Ignacio Carbajo software engineer @ accedo.tv

Fast virtualized environment with UI using i3

Continuing with a description of the setup I use for my development, here I will comment about my current configuration files for a virtualized environment using UI.

I rarely use the VM via the UI (i.e. the mouse), and there can pass several weeks when I don’t open enable it even once. However, there are times when some tools are too UI dependent and the time constraints force to use a desktop manager for the virtual machine, instead of the normal approach of configuring the tool to be used from the host OS (including coding via SSH, Tmux and Vim).

One example of easy integration between my virtual machine and the host OS is MySQL Workbench, where it is simple to configure connections from the host (e.g. Windows OS) to the MySQL service running in the virtual machine. The same applies to anything that works via RESTful API really (e.g. servers), but one example where I decided to use the UI directly in the VM was running some Selenium integration tests.

Because the host OS is already consuming a lot of memory, I looked for lightweight solutions for this. One option was Lubuntu, which is a fast distribution similar to the widely popular Ubuntu, but decided to just use i3 which can be integrated with my OS of choice: Arch Linux. So far I am very pleased with this solution because it runs very smoothly, it is simple to configure and flexible.

The configuration files at the time of writing this article are:

Will comment about the most important points in both files.

Environment setup

i3 config file