Skip to content

Instantly share code, notes, and snippets.

@snx90
Forked from matteyeux/build_pongo.sh
Created June 16, 2022 20:28
Show Gist options
  • Save snx90/f29dc7a9a4508614b5358846772c979b to your computer and use it in GitHub Desktop.
Save snx90/f29dc7a9a4508614b5358846772c979b to your computer and use it in GitHub Desktop.
Bash script to install dependencies needed to build PongoOS on Linux
#!/bin/bash
############################################################
# Script to install everything needed
# to build PongoOS on Linux.
# tested on Debian and Ubuntu
#
# to clean : sudo rm -rf /opt/ios-arm64e-clang-toolchain \
# pongoOS /usr/share/sdks
############################################################
set -e
current_dir=$(pwd -P)
# install utils needed to build PongoOS
echo 'deb https://assets.checkra.in/debian /' | sudo tee /etc/apt/sources.list.d/checkra1n.list
sudo apt-key adv --fetch-keys https://assets.checkra.in/debian/archive.key
sudo apt-get update
sudo apt-get install -y ld64 cctools-strip
# Download Sam Bingner's toolchain
curl -L https://github.com/sbingner/llvm-project/releases/download/v10.0.0-2/linux-ios-arm64e-clang-toolchain.tar.lzma -o /tmp/linux-ios-arm64e-clang-toolchain.tar.lzma
# Extract to /opt, make sure you are sudoer
sudo tar Jxvf /tmp/linux-ios-arm64e-clang-toolchain.tar.lzma -C /opt/
#sudo mkdir -p /opt/ios-arm64e-clang-toolchain/sdks
# Get iPhoneOS SDK
git clone --depth 1 https://github.com/theos/sdks.git /tmp/sdks
sudo mv /tmp/sdks /usr/share/sdks
# Pongo build
cd $current_dir
git clone https://github.com/checkra1n/pongoOS.git
cd pongoOS
sudo cp scripts/arm64-apple-ios12.0.0-clang /usr/local/bin/
git submodule update --init
EMBEDDED_CC='clang-10' EMBEDDED_AR='/opt/ios-arm64e-clang-toolchain/bin/llvm-ar' EMBEDDED_RANLIB='/opt/ios-arm64e-clang-toolchain/bin/llvm-ranlib' make
# clean
rm -rf /tmp/linux-ios-arm64e-clang-toolchain.tar.lzma
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment