Skip to main content

Software Requirements

The principal release engineer runs Fedora (on this hardware), community-contributed instructions for other platforms are listed here.

  • @development-tools
  • @fedora-packager
  • binutils-aarch64-linux-gnu
  • binutils-arm-linux-gnu
  • binutils-x86_64-linux-gnu
  • brotli
  • cargo
  • ccache
  • java
  • java-devel
  • java-17-openjdk-devel
  • gcc-c++
  • git-filter-repo
  • glibc.i686
  • gperf
  • libstdc++.i686
  • libxcrypt-compat
  • ncurses-compat-libs-6.4
  • ninja
  • java-1.8.0-openjdk-headless
  • java-17-openjdk-headless
  • java-21-openjdk-headless
  • openssl-devel
  • openssl-engine-devel
  • p7zip
  • parallel
  • perl-FindBin
  • python2.7
  • python3.12
  • repo
  • secilc
  • zlib.i686
  • zlib-ng-compat.i686
  • zopfli

To do this in one fell swoop:

One-liner
$ sudo dnf -y install \
@development-tools \
@fedora-packager \
binutils-aarch64-linux-gnu \
binutils-arm-linux-gnu \
binutils-x86_64-linux-gnu \
brotli \
cargo \
ccache \
java \
java-devel \
java-17-openjdk-devel \
gcc-c++ \
git-filter-repo \
glibc.i686 \
gperf \
libstdc++.i686 \
libxcrypt-compat \
ncurses-compat-libs-6.4 \
ninja \
java-1.8.0-openjdk-headless \
java-17-openjdk-headless \
java-21-openjdk-headless \
openssl-devel \
openssl-devel-engine \
p7zip \
parallel \
perl-FindBin \
python2.7 \
python3.12 \
repo \
secilc \
zlib.i686 \
zlib-ng-compat.i686 \
zopfli

Further, you may wish to wrap the repo command like so:

$ cat ~/bin/repo
#!/bin/bash

if [ -x "$PWD/.repo/repo/repo" ]; then
repo_cmd="$PWD/.repo/repo/repo"
else
repo_cmd=/bin/repo
fi

if [ -z "${repo_cmd}" ]; then
echo "No such command repo"
exit 1
fi

${repo_cmd} $@

Other Platforms