Skip to content
TuxRun Logo

Pipeline Status coverage report PyPI version Code style: black PyPI - License

Documentation - Repository - Issues

TuxRun, by Linaro, is a command line tool for testing Linux on the following virtual devices, using curated test suites.

  • AVH
  • FVP
  • QEMU

TuxRun is a part of TuxSuite, a suite of tools and services to help with Linux kernel development.

About TuxRun

Testing the Linux kernel is as simple as using QEMU but it gets complicated when you want to support the following combinations:

  • Architectures (arm64, armv5, armv7, i386, mips32, mips32el, mips64, mips64el, ppc32, ppc64, ppc64le, riscv64, s390, sh4, sparc64, x86_64)

  • Emulation systems (QEMU or FVP or AVH)

  • Tests (every test suite has dependencies on the rootfs)

Each of those items requires specific configuration and root file systems. In order to allow for reproducible tests, TuxRun uses containers runtimes (Docker or Podman).

Installing TuxRun

There are several options for installing TuxRun:

Using TuxRun

To use TuxRun, compile your own linux kernel for arm64, for example using TuxMake.

Then call tuxrun:

tuxrun --device qemu-arm64 --kernel /path/to/Image

TuxRun will automatically start qemu-system with the right arguments and the right root filesystem.

Known issues

Known issues when booting on different virtual platforms.

Examples

Boot test a mipsel kernel at https://mykernel.org/vmlinux:

tuxrun --device qemu-mips32el \
       --kernel https://mykernel.org/vmlinux

Running ltp-smoke:

tuxrun --device qemu-mips32el \
       --kernel https://mykernel.org/vmlinux \
       --test ltp-smoke

Using a custom root file system

tuxrun --device qemu-mips32el \
       --kernel https://mykernel.org/vmlinux \
       --rootfs https://mykernel.org/rootfs.tar.xz