#!/usr/bin/env bash source "$(dirname -- "${BASH_SOURCE[0]}")/lib.sh" [[ $# == 0 ]] || die 'Usage: tools/build-fds-package' cd "$FDS_ROOT" fds_version=$(tools/version) use_xbps tools/build-fds tools/prepare-void input="$FDS_VOID/hostdir/sources/fds-cli-${fds_version}" mkdir -p "$input" out/packages cp out/fds out/fds-control out/fds-program out/fds-boottrace out/fds-burn out/fds-inspect out/fds-eject out/fds-power out/fds-release LICENSE "$input/" notices=$(mktemp -d "$FDS_ROOT/out/rust-notices.XXXXXX") python3 tools/rust-notices "$notices/RUST-NOTICES.txt" cp "$notices/RUST-NOTICES.txt" "$input/" (cd "$input" && sha256sum fds fds-control fds-program fds-boottrace fds-burn fds-inspect fds-eject fds-power fds-release LICENSE RUST-NOTICES.txt >SHA256SUMS) ( cd "$FDS_VOID" xbps_src -a aarch64 clean fds-cli xbps_src -f -a aarch64 pkg fds-cli ) 2>&1 | tee out/logs/xbps-fds-cli.log tools/export-package "$FDS_VOID/hostdir/binpkgs/fds-cli-${fds_version}_1.aarch64.xbps" input="$FDS_VOID/hostdir/sources/fds-cartridged-${fds_version}" if [[ -d $input ]]; then previous=$(mktemp -d "$FDS_ROOT/out/cartridged-source.XXXXXX") mv "$input" "$previous/" fi mkdir -p "$input/s6-source/boot/contents.d" cp out/fds-cartridged out/fds-profile LICENSE "$input/" cp -a s6/source/cartridged s6/source/cartridged-runtime s6/source/cartridged-log "$input/s6-source/" for service in desktop desktop-runtime xserver xserver-log desktop-session desktop-log network network-runtime dhcp network-log; do cp -a "s6/source/$service" "$input/s6-source/" done cp s6/source/boot/contents.d/cartridged "$input/s6-source/boot/contents.d/" (cd "$input" && find . -type f ! -name SHA256SUMS -print0 | sort -z | xargs -0 sha256sum >SHA256SUMS) ( cd "$FDS_VOID" xbps_src -a aarch64 clean fds-cartridged xbps_src -f -a aarch64 pkg fds-cartridged ) 2>&1 | tee out/logs/xbps-fds-cartridged.log tools/export-package "$FDS_VOID/hostdir/binpkgs/fds-cartridged-${fds_version}_1.aarch64.xbps" printf 'PASS: FDS CLI package built without a dynamic libc dependency\n'