As application developers, one of the biggest hidden challenges can be getting your software distributed to users with all the dependencies managed. Linux distributions began offering a solution to this problem long ago in the form of packages and package management systems. In the case of Ubuntu, software is distributed in Debian or “.deb” packages, for Red Hat software is distributed as .rpm packages.
Today, a large chunk of the Ubuntu repository that is already packaged for Ubuntu is ported for LinuxONE’s s390x hardware architecture. Users of Ubuntu on LinuxONE can already run thousands of Linux applications with a flick of apt. In order to effectively do this, there’s a team at Canonical responsible for this port, and they have an IBM Z server to do their work on.
But what if you have a piece of software that is not already included in the Ubuntu repositories, but you want to provide it to s390x users? The first step is creating a .deb package, which you can learn about here.
From there, the Ubuntu community has a process by which software projects can distribute their own packages directly to users, called a Personal Package Archive (PPA). By default, Launchpad builds PPAs for i386 and amd64, but if you select “Change details” of your PPA, you’re presented with a list of other architectures you can target, including IBM Z.