mkbootstrap.sh 941 B

1234567891011121314151617181920212223242526272829303132333435
  1. #!/usr/bin/bash
  2. set -e
  3. mkdir bootstrap-chroot
  4. cd bootstrap-chroot
  5. echo "Downloading alpine minirootfs..."
  6. wget https://dl-cdn.alpinelinux.org/alpine/v3.23/releases/x86_64/alpine-minirootfs-3.23.2-x86_64.tar.gz
  7. echo "Extracting alpine minirootfs..."
  8. tar -xf alpine-minirootfs-3.23.2-x86_64.tar.gz
  9. rm alpine-minirootfs-3.23.2-x86_64.tar.gz
  10. echo "Preparing chroot environment..."
  11. CHROOT_PATH=$(pwd)
  12. cp /etc/resolv.conf $CHROOT_PATH/etc/resolv.conf
  13. mount -t proc none $CHROOT_PATH/proc
  14. mount -t sysfs none $CHROOT_PATH/sys
  15. mount --bind /dev $CHROOT_PATH/dev
  16. mount --bind /dev/pts $CHROOT_PATH/dev/pts
  17. mount --bind /run $CHROOT_PATH/run
  18. cat <<'EOF' > usr/bin/astrologue-package-bootstrap
  19. #!/bin/sh
  20. set -e
  21. apk update
  22. apk add gcc vala make bash ninja meson libgee gobject-introspection-dev
  23. EOF
  24. chmod +x usr/bin/astrologue-package-bootstrap
  25. echo "Setting up chroot environment..."
  26. chroot . /usr/bin/astrologue-package-bootstrap
  27. echo "Done";