Ubuntu MATE for the Raspberry Pi 2 and Raspberry Pi 3

Martin Wimpress and Rohith Madhavan have made an Ubuntu MATE image for the Raspberry Pi 2 and Raspberry Pi 3 which you can download or build yourself.
The image is based on the regular Ubuntu armhf base, not the new Snappy Core, which means that the installation procedure for applications is the same as that for the regular desktop version, ie using apt-get. However, since Ubuntu MATE 16.04 snap packages can be installed alongside classic deb packages.
We have done what we can to optimise the build for the Raspberry Pi 2 and Raspberry Pi 3, you can comfortably use applications such as LibreOffice, which in fact is a joy to use 🙂 But the microSDHC I/O throughput is a bottleneck so we highly recommend that you use a Class 6 or Class 10 microSDHC card. Ubuntu MATE 16.04 also has fully working Bluetooth and Wifi on the Raspberry Pi 3
You’ll need a microSD card which is 8GB or greater to fit the image. The file system can be resized to occupy the unallocated space of the microSD card, on Ubuntu MATE 16.04 this can be done via Ubuntu MATE Welcome.
NOTE! There are no predefined user accounts. The first time you boot one of the desktop images it will run through a setup wizard where you can create your own user account and configure your regional settings. The first boot is quite slow but, once the first boot configuration is complete, subsequent boots are much quicker.

Known Issues

  • During first boot configuration Ubiquity does not prompt to join available WiFi networks.
  • Upon completion of the first boot setup WiFi doesn’t work, at all. Reboot and WiFi will be available.

Both these issues will be addressed in Ubuntu MATE 16.04.1 for Raspberry Pi 2 and 3 which is due in late July.

Making a microSDHC

The image can be directly written to a microSDHC using a utility like dd, but we prefer ddrescue (from the gddrescue, for example:

sudo apt-get install gddrescue xz-utils
unxz ubuntu-mate-16.04-desktop-armhf-raspberry-pi.img.xz
sudo ddrescue -D --force ubuntu-mate-16.04-desktop-armhf-raspberry-pi.img /dev/sdx

The microSDHC may be presented on any /dev/sdX so use the command lsblk to check.
If you prefer a graphical tool we recommend using GNOME Disks and the Restore Disk Image… option, which natively supports XZ compressed images.

sudo apt-get install gnome-disk-utility

Making a microSDHC with Windows

If you want to make a microSDHC using Windows we recommend:

Re-size file system

Ubuntu MATE 16.04

You can use Ubuntu MATE Welcome to resize to automatically resize the partitions to make full use of your microSHDC card capacity. Simply click the large Raspberry Pi Information button on the Welcome screen, click the Resize button and then restart the Raspberry Pi.

Manual Method

It’s not hard to do manually. Once booted:

sudo fdisk /dev/mmcblk0

Delete the second partition (d, 2), then re-create it using the defaults (n, p, 2, enter, enter), then write and exit (w). Reboot the system, then:

sudo resize2fs /dev/mmcblk0p2

Enable and Disable X11

We created a simple utility called graphical to disable/enable the MATE desktop environment for easily creating a headless “server”. Executing graphical disable will present a console login on the next boot, with no X11 or associated services running. If you want to get the full Ubuntu MATE desktop back, run graphical enable and reboot.

Hardware accelerated video with omxplayer

Most videos will play with hardware acceleration using omxplayer which is pre-installed in Ubuntu MATE. However if you have MPEG-2 or VC-1 video video files then you will need MPEG-2 and/or VC-1 licenses from the Raspberry Pi Store.

Redirecting audio output

You can select which audio device omxplayer should output audio to.

For HDMI
omxplayer -o hdmi video.mp4
For 3.5mm audio jack
omxplayer -o local video.mp4

The sound will output to HDMI by default if both HDMI and the 3.5mm audio jack are connected. You can, however, force the system to output to a particular device using amixer.

For HDMI
sudo amixer cset numid=3 2
For 3.5mm audio jack
sudo amixer cset numid=3 1

Hardware accelerated video with VLC and ffmpeg

Ubuntu MATE 16.04 added OpemMAX IL hardware accelerated video playback to VLC and MMAL hardware accelerated video playback to ffmpeg.

  • To enable hardware accelerated video playback in VLC go to Tools -> Preferences -> Video and select OpenMax IL.
  • To use hardware accelerated video playback with ffplay you must specify the h264_mmal codec
    ffplay -vcodec h264_mmal video.mp4

Hardware accelerated playback on the Raspberry Pi works by overlaying the video directly to the screen. Therefore there are no onscreen controls for playback control. You’ll need to use the VLC and ffmpeg keyboard shortcuts.

Feedback and Improvements

Please post all feedback on the dedicated community forum. If you have any improvements then please submit a pull request to the Ubuntu Pi Flavour Maker project.

Credits

  • Rohith Madhavan – Made the Ubuntu MATE 15.04 image for the Raspberry Pi 2.
  • Martin Wimpress – Added first boot setup wizard and architecture optimisations.
  • Ryan Finnie – Raspberry Pi 2 Kernel, Firmware and video driver packages.
  • Sjoerd Simons – Made the initial Raspberry Pi 2 kernel patches for Debian Jessie.
  • Sergio Conde – Maintains omxplayer for the Raspberry Pi.
  • Spindle – a tool to help spin distribution images

Recent Changes

2016-04-24 – 16.04 Final Release for Raspbery Pi 2 and Raspberry Pi 3

  • Added OpemMAX IL hardware accelerated video playback to VLC.
    • To enable hardware accelerated video playback go to Tools -> Preferences -> Video and select OpenMax IL.
  • Added MMAL hardware accelerated video playback to ffmpeg.
    • To use hardware accelerated video playback with ffplay you must specify the h264_mmal codec – ffplay -vcodec h264_mmal video.mp4
  • Increased the minimum microSDHC card size to 8GB.
  • Removed tboplayer.

2016-04-05 – 16.04 Beta 2 for Raspberry Pi 2 and Raspberry Pi 3

  • Updated to Ubuntu MATE 16.04 including the new Welcome which comes with Raspberry Pi specific features.
  • Updated BlueZ 5.37 with patches to support the Raspberry Pi 3 integrated Bluetooth.
    • Ubuntu MATE 16.04 now supports the on-board Raspberry Pi 3 Bluetooth and Wifi.
  • Updated to Linux 4.1.19.
  • Updated to raspberrypi-firmware 1.20160315-1.
  • Updated to omx-player 0.3.7~git20160206~cb91001.
  • Updated to wiringpi 2.32.
  • Updated to nuscratch 20160115.
  • Updated to sonic-pi 2.9.0.
  • Migrated configuration tweaks to raspberrypi-general-mods and raspberrypi-sys-mods.
  • Experimental hardware accelerated OpenGL can be enabled, if you know how ;-)

Previous Changes