openSUSE:ARM distribution howto

Jump to: navigation, search

How to work on openSUSE:Factory:ARM

The openSUSE Build Service hosts a linked project of openSUSE:Factory which builds all sources for ARM architectures.

We support 3 binary architectures:

  • aarch64 which is the new 64-bit architecture
  • armv7l/armv7hl with hardware floating point
  • armv6l/armv6hl with hardware floating point

Currently all packages are built on native hardware on the server.

You can build on native ARM hardware, or on using any other hardware using qemu, without KVM acceleration support.

With ARM hardware

For example to fix the package hello run the following commands:

osc bco openSUSE:Factory:ARM hello
cd home:<username>:branches:<branched base project name>/hello

Then fix the stuff, produce a test build, and submit it to the Build Service.:

osc build standard armv7l hello.spec --vm-type=kvm # Drop --vm-type=kvm if you want to build using chroot (no qemu/KVM)
osc vc         # to comment your change to the end user
osc ci         # checkin your stuff
osc sr         # submit it to the devel project which will forward it to factory


Without ARM hardware

This requires osc 0.167 or later

You can still build it via qemu using osc, on other architectures. For that you need to build it using non accelerated qemu (no KVM). The qemu-arm package is required.

For example to fix the package hello run the following commands:

osc bco openSUSE:Factory:ARM hello
cd home:<username>:branches:<branched base project name>/hello

Then fix the stuff, produce a test build, and submit it to the Build Service.:

osc build standard armv7l hello.spec --vm-type=qemu
osc vc         # to comment your change to the end user
osc ci         # checkin your stuff
osc sr         # submit it to the devel project which will forward it to factory

Main Problems

To see what is not building, click on the monitor page.

To fix/update a package, you need to:

  1. branch it
  2. Fix or update it in your branch home:branches:*
  3. submit changes to the devel project it belongs
  4. submit the latest devel version to openSUSE:Factory project
  5. openSUSE:Factory:ARM will inherit the changes from openSUSE:Factory in real time

How to work on openQA for openSUSE Tumbleweed AArch64

openQA is the tool used to test openSUSE distributions, including openSUSE Tumbleweed for Arm. Most of the tests are performed for AArch64, but some are for armv7 as well.

If you want to help on the test side, please review the latest test at: https://openqa.opensuse.org/tests/overview?version=Tumbleweed&groupid=3