NACServer
This is a server that can generate "validation data" necessary for pypush based on emulated values in a data.plist
.
data.plist
can either be obtained by asking me, or using build_extractor.sh
to generate it on an older mac (M1 macs will not work, or anything without a board-id.
Using Darling
Darling is now fully supported, however, it currently requires applying darlinghq/darling-xnu#1. Here are detailed instructions for Debian:
sudo apt install cmake clang-11 bison flex xz-utils libfuse-dev libudev-dev pkg-config \ libc6-dev-i386 libcap2-bin git git-lfs python2 libglu1-mesa-dev libcairo2-dev \ libgl1-mesa-dev libtiff5-dev libfreetype6-dev libxml2-dev libegl1-mesa-dev libfontconfig1-dev \ libbsd-dev libxrandr-dev libxcursor-dev libgif-dev libpulse-dev libavformat-dev libavcodec-dev \ libswresample-dev libdbus-1-dev libxkbfile-dev libssl-dev llvm-dev
git clone --recursive https://github.com/darlinghq/darling.git
cd darling
cd src/external/xnu/
git pull https://github.com/JJTech0130/darling-xnu
cd ../../..
mkdir build && cd build
cmake .. -DCOMPONENTS=cli_dev -DCMAKE_BUILD_TYPE=Debug -DTARGET_i386=OFF
make -j4
sudo make install
darling shell zsh
- (In the Darling shell)
xcode-select --install
Running the server
python3 ./stubber.py
- (In darling shell if using darling)
./build.sh
- (NOT in the darling shell)
python3 ./server.py