aboutsummaryrefslogtreecommitdiffstats
path: root/make-bootstrap-file.sh
blob: a723cdfdc490371a896e1adfe35dd40d28a2ffd1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#!/bin/bash

# build: Bootstrap a base Hyperbola GNU+Linux-libre system.

set -e -u -o pipefail

SCRIPT=$(readlink -f "$0")
SCRIPT_PWD=$(dirname "$SCRIPT")
CHROOT_DELETE='y'

RESULTPATH=${SCRIPT_PWD}/
ARCH="x86_64"
# Hyperbola v0.4
REPO_URL="https://mirror.fsf.org/hyperbola/gnu-plus-linux-libre/testing"
# # Hyperbola v0.3
# REPO_URL="https://mirror.fsf.org/hyperbola/gnu-plus-linux-libre/stable"
ROOTFS="$ARCH"
# remove old archives
rm -f "${RESULTPATH}/hyperbola-bootstrap.tar.gz" "${RESULTPATH}/hyperbola-bootstrap.tar.gz.sha512sum"

# bootstrap for v0.4
"${SCRIPT_PWD}/hyper-bootstrap_v0.4.sh" -a "${ARCH}" -r "${REPO_URL}" "${ROOTFS}"

# bootstrap for v0.3
# "${SCRIPT_PWD}/hyper-bootstrap_v0.3.sh" -a "${ARCH}" -r "${REPO_URL}" "${ROOTFS}"

cd "${ROOTFS}"
# clean up package cache
rm -rf var/cache/*

# create new archive
cd ${RESULTPATH}
tar --create --gzip --numeric-owner --xattrs --acls --file="hyperbola-bootstrap.tar.gz" "${ROOTFS}"

# create shasum
sha512sum "${RESULTPATH}/hyperbola-bootstrap.tar.gz" >| "${RESULTPATH}/hyperbola-bootstrap.tar.gz.sha512sum"

# clean chroot temp
case $CHROOT_DELETE in
    y) rm -rf "${ROOTFS}" || true && echo -e "\e[1;32m==>\e[0m\033[1m Temporal chroot deleted! \e[m" ;;
    n) echo 'temporal chroot available' ;;
    *) echo 'invalid_option "$@"' ;;
esac

# report result
echo "REPO: $REPO_URL"
echo "ROOTFS: $ROOTFS"
echo "RESULTPATH: $RESULTPATH"