Skip to content
Angstrom development environment setup using Android repo tool
Branch: master
Clone or download
koenkooi default.xml: switch more to master
Change-Id: I8e1ed0d0132fdc8c505a29ff96313d545e092e64
Signed-off-by: Koen Kooi <>
Latest commit 881c39f Jul 30, 2019


Type Name Latest commit message Commit time
Failed to load latest commit information.
scripts scripts: import prserv-import-helper Jan 1, 2016
LICENSE Initial commit Nov 2, 2013 switch to https URIs Jul 30, 2019
default.xml default.xml: switch more to master Jul 30, 2019
setup-environment setup: repo needs python2 and use relative dir for sourcing scripts Oct 29, 2016
setup-environment-internal setup-environment-internal: fix usage when BUILDDIR is unset Jul 30, 2019
staging.xml Update staging.xml Oct 12, 2018


Ångström Repo manifest repository

These are the setup scripts for the Ångström buildsystem. If you want to (re)build packages or images for Ångström, this is the thing to use. The Ångström buildsystem is using various components from the Yocto Project, most importantly the Openembedded buildsystem, the bitbake task executor and various application and BSP layers.

To configure the scripts and download the build metadata, do:

$ mkdir ~/bin
$ PATH=~/bin:$PATH

$ curl > ~/bin/repo
$ chmod a+x ~/bin/repo

Please note that repo requires python2, some distributions which default to python3 might need below fix

sed -i "s%/usr/bin/env python$%/usr/bin/env python2%" ~/bin/repo

you might have to re-run this command everytime repo tool is updated in ~/bin/repo

Run repo init to bring down the latest version of Repo with all its most recent bug fixes. You must specify a URL for the manifest, which specifies where the various repositories included in the Android source will be placed within your working directory.

$ repo init -u

To check out a branch other than "master", specify it with -b:

$ repo init -u -b angstrom-v2018.12-thud

When prompted, configure Repo with your real name and email address.

A successful initialization will end with a message stating that Repo is initialized in your working directory. Your client directory should now contain a .repo directory where files such as the manifest will be kept.

To pull down the metadata layers to your working directory from the repositories as specified in the default manifest, run

$ repo sync

When downloading from behind a proxy (which is common in some corporate environments), it might be necessary to explicitly specify the proxy that is then used by repo:

$ export HTTP_PROXY=http://<proxy_user_id>:<proxy_password>@<proxy_server>:<proxy_port>
$ export HTTPS_PROXY=http://<proxy_user_id>:<proxy_password>@<proxy_server>:<proxy_port>

More rarely, Linux clients experience connectivity issues, getting stuck in the middle of downloads (typically during "Receiving objects"). It has been reported that tweaking the settings of the TCP/IP stack and using non-parallel commands can improve the situation. You need root access to modify the TCP setting:

$ sudo sysctl -w net.ipv4.tcp_window_scaling=0
$ repo sync -j1

Setup Environment

$ . ./setup-environment

$ MACHINE=<machine> bitbake <image>
e.g. MACHINE=beaglebone bitbake systemd-image

Creating a local topic branch

Setup will already create a branch called $USER/work but if you need to create local branches for all repos which then can be done e.g.

$ repo start myangstrom --all

Where 'myangstrom' is the name of branch you choose

Updating the sandbox

Setup will do this as well but in between if you need to bring changes from upstream then use following commands

$ repo sync

Rease your local committed changes

$ repo rebase

If you find any bugs please report them here

If you have questions or feedback, please subscribe to

Ångström Distribution maintainers

You can’t perform that action at this time.