Arm/aarch64 Ubuntu using Ubuntu Mate image building process

I know it’s unrelated, but I sincerely hope that UM developers can help me all the same.

I need to run a web service on Pi 3, but the problem is its stable version has some 64-bit dependencies. I did make it somewhat run in a hacky sort of way with both development and stable portions, but it’s buggy all the same. I’m currently running it on Ubuntu Mate because I also need WiFi.

Because of the 64-bit dependency, I was researching if I could hack my way into Ubuntu Core bypassing the console-config or whatever that does the SSO login, but looking at the official image’s model assertion JSON, the arch is defined to be the 32-bit armhf.

I’m at a loss here. I need to run 64-bit and access the full repos of either CentOS, Debian or Ubuntu.

That’s why I’m here to ask: what’s Ubuntu Mate’s image building process and if I can use it to create bootable image of Ubuntu Server that can access Ubuntu’s arm64 repos.

In my experience it does not take too many steps to modify the standard Ubuntu MATE Xenial image to support arm64 executables. I wrote out some instructions for swapping the kernel here.

As you mention there are also alternatives to MATE such as 64-bit Debian or Gentoo that are supported on a Pi 3.

Thank you for your response! Can the UM bootloader (and WiFi firmware) be adapted to generate a Ubuntu Server image? I’m using MATE as a last resort, and since I’m using it as a server, obviously the GUI and other things are completely unnecessary.

I’ve seen the pi64 project, but I don’t know to what extent it’s modified vanilla Debian, so I’m worried the Pi will eventually get screwed if what appears to be a personal project ends.

Would love to use Gentoo, except the installation script doesn’t support it. It really has a ■■■■ ton of dependencies and configurations. Maybe an Ubuntu docker or some container solution would work.

I think Ubuntu Server for Pi (specifically ubuntu-core-16-pi3.img.xz) might already be using the same bootloader? After all Ubuntu MATE is just using the Raspbian bootloader. On top of the bootloader you still need a whole 64-bit kernel though, which is why I borrow the one from Pi64.

If you want to get rid of the GUI on Ubuntu MATE, run sudo apt remove ubuntu-desktop. However, if you don’t need a GUI then you could probably skip the part of modifying Ubuntu MATE and just work on the Pi64 system image directly.

I don’t see an obvious solution for the limited support. In your situation I would set a flow up such that it could be readily migrated to Debian arm64 Raspberry Pi once debian.org hosts an official image, whether that’s months or years down the road.