Using Quickemu to test latest Ubuntu MATE builds

If you want to help us with testing latest builds of Ubuntu MATE - you can use Quickemu application which is written by Martin Wimpress and based on mature virtualisation application named QEMU. So the testing is done in the virtual environment and will not cause any harm for real physical hardware.

To use virtualisation at full speed you have to enable it in the BIOS/UEFI of your device.
This guide assumes that you are running Ubuntu MATE 20.04 LTS or newer version.

Below is how one can run testing of current development version daily builds - Ubuntu MATE 22.04 LTS (Jammy Jellyfish).

Installing and setting up Quickemu

To install Quickemu we need to add its PPA to the system:

sudo apt-add-repository ppa:flexiondotorg/quickemu
sudo apt update
sudo apt install quickemu

Then we need to prepare a folder for ISO testing and get to it with commands below:

mkdir ~/iso-testing
cd ~/iso-testing

Then ask Quickemu' companion utility named quickget to download latest ISO and run it using default settings (EFI mode, >= 2 Gb of RAM, 16 Gb virtual disk drive):

quickget ubuntu-mate daily-live
quickemu --vm ubuntu-mate-daily-live.conf

Deeper VM configuration is covered in the next section.

Configuring virtual machines for ISO testing

Quickemu and underneath QEMU allows us to set two kinds of virtual machines - legacy (BIOS) and modern (EFI). For the most productive testing we need to test both.

To create configuration file for legacy (BIOS) VM we can use the single long command below:

cat << EOF > ~/iso-testing/ubuntu-mate-devel-legacy.conf
boot="legacy"
guest_os="linux"
iso="/home/$USER/iso-testing/ubuntu-mate-devel/ubuntu-mate-devel.iso"
disk_img="/home/$USER/iso-testing/ubuntu-mate-devel-legacy.qcow2"
disk=16G
EOF

The virtual hard-disk in configuration file above is 16 gigabytes, you may want to increase it for your needs.

To create configuration file for modern (EFI) VM we can use the single long command below:

cat << EOF > ~/iso-testing/ubuntu-mate-devel-efi.conf
boot="efi"
guest_os="linux"
iso="/home/$USER/iso-testing/ubuntu-mate-devel/ubuntu-mate-devel.iso"
disk_img="/home/$USER/iso-testing/ubuntu-mate-devel-efi.qcow2"
disk=16G
EOF

To launch legacy (BIOS) VM we should use commands below:

cd ~/iso-testing
quickemu --vm ubuntu-mate-devel-legacy.conf

To launch modern (EFI) VM we should use commands below:

cd ~/iso-testing
quickemu --vm ubuntu-mate-devel-efi.conf

It is recommended to remove virtual hard disk files before testing new ISO.

You can do it manually or by providing --delete-disk option to quickemu command.

Reporting test results

If you are interested - you can participate in ISO testing on the corresponding page - http://iso.qa.ubuntu.com/qatracker/milestones/429/builds for Jammy Daily (Ubuntu 22.04 LTS) daily builds.

Select Ubuntu MATE Desktop amd64 build here and then follow instructions in testcases.


Known issues:

  • if your graphics card is old and you get the following message on launch of the virtual machine

    qemu_gl_create_compile_shader: compile vertex error 0:2(10): error: GLSL ES 3.00 is not supported. Supported versions are: 1.10, 1.20, and 1.00 ES

    Then you can remove this message by forcing software rendering with LIBGL_ALWAYS_SOFTWARE=1 quickemu --vm ubuntu-mate-devel.conf .

  • current version of QuickEmu can't run on Ubuntu 18.04 LTS because of old QEMU here.

8 Likes