Skip to content

Repository files navigation

Amonite Mobile

The community builder for Amonite Mobile: a Debian 13 (trixie) image for arm64 devices, with a Wayland desktop built for a touchscreen, the Calamares installer, and a layer that resolves what a device needs after it boots and enables only that.

The Amonite Mobile desktop

./build.sh

builds a bootable ISO under build/, validates it, boots it in an emulated aarch64 machine, and answers PASS, WARN, SKIP or FAIL. An image that was produced but not validated is not reported as a success. BUILDING.md describes the phases and the exit codes.

The variant it builds is Community, which is not an official Amonite image. The variant name appears in the ISO file name, the volume label, os-release, the boot menu and the installer, so it stays visible after the file has been copied elsewhere.

Status

Amonite Mobile has not been tested on physical hardware yet. The image builds, and it boots and reaches a session in an emulated aarch64 machine, which is what the checks in this repository cover: that the software and the build process work. That is not evidence that any particular phone, tablet or Chromebook will boot it.

The aim is a mobile distribution that can be adapted to as many arm64 devices as possible — phones, tablets and Chromebooks — by describing each one rather than by patching the image. Hardware support is added as descriptors and capabilities, so a new device is a new file and not a new build. HARDWARE.md explains the model, and separates hardware the project describes from hardware that has actually been tested.

It is arm64 only. The mobile packages the image depends on are built for it, and Debian enables CONFIG_ANDROID_BINDER_IPC, which Waydroid needs, only in the arm64 kernel configuration. You can build an arm64 image on an x86-64 host.

What this repository is

Debian is the base. This repository is the product selection on top of it: which packages go in, what the desktop does, how a device is set up on first boot, and how the image identifies itself.

A package is in the image because something in the image uses it. APT recommends are off, so anything a component needs from a Recommends is named explicitly in one of the lists under config/, next to the reason it is wanted.

Hardware is resolved after the boot rather than at build time, so one ISO can cover many devices, and an install from the medium does not need a network. HARDWARE.md describes that layer.

The desktop assumes a touchscreen and no keyboard: a greeter you can answer with an on-screen keyboard, a second on-screen keyboard in the session itself, one bar at the top to read and one at the bottom to touch, screenshots in a tap, a brightness slider, telephony and SMS handled by Calls and Chatty, haptics and the notification LED through feedbackd, Waydroid for Android applications, and LibreWolf as the browser.

Waydroid is integrated into Amonite Mobile and Android images are preinstalled for use without an initial network download or configuration wizard. It appears in the launcher alongside everything else the image ships:

The application launcher, with Waydroid among the installed applications

Getting an image

This repository is the builder and does not carry a published ISO. Its source is Amonite Mobile, and release artifacts are published at Release artifacts. See also amonite.org.

Building your own is one command. It needs mmdebstrap and a few standard tools, about 20 GB of disk, and no root; an amd64 host additionally needs to be able to run arm64 binaries. BUILDING.md has the dependencies, the targets and the two things that stop a first build.

Once you have an image, TESTING.md covers checking and booting it, and INSTALLING.md covers writing it to a device and installing it.

Documentation

BUILDING.md host requirements, build targets, artefacts, offline builds, reproducibility
TESTING.md checking an ISO, booting it in a virtual machine, diagnostic bundles
INSTALLING.md verifying an image, writing it to a device, the live session, installing
HARDWARE.md how a device is recognised, and how to add support for one
CUSTOMIZATION.md packages, files, hooks, firmware, identity, making a derived distribution
CONTRIBUTING.md working on the tree and validating a change
docs/architecture.md how the build and the boot fit together
docs/session.md what the desktop is made of and where each part is configured
docs/troubleshooting.md reading a boot that went wrong

Project layout

config/     identity, package lists, APT sources and pins, preseeds, boot menu
rootfs/     files copied into the image, as an overlay on /
hooks/      scripts run inside the image at build time
scripts/    build stages, validation and the boot test
packages/   local .deb files to install (not committed)
build/      everything generated

config/image.conf is the one place the product names itself: name, variant, version and addresses. Every file that displays any of them is filled in from it at build time, so renaming a fork is one edit.

Licence

GPL-3.0-or-later. See LICENSE. You may copy, modify, rebuild and redistribute this repository under those terms, including as a variant of your own.

That covers this repository: the build scripts, the configuration, the overlay and the documentation. It does not cover what ends up inside a built image.

An ISO is assembled from Debian packages and other third-party software, each under its own licence, and the enabled archive areas include non-free-firmware. None of it is redistributed by this repository — it is downloaded at build time. If you distribute an image you built, you are distributing that software too, under its licences and not under this one. Check what your variant includes before you publish it.

About

A mobile Linux distribution built for modern smartphones, with a touch-friendly desktop and Android app support through Waydroid.

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages