An HTTP server wrapper for omnisette.
Supports both V1 (Provision) and V3 of anisette servers.
First, download the Apple Music APK in the root of the project directory and then extract it as a zip.
unzip applemusic.apk 'lib/*/libstoreservicescore.so' 'lib/*/libCoreADI.so'
Next, download the latest omnisette-server binary for your platform from GitHub Releases. Place it in the root project directory with the lib
directory, so that omnisette can access the libraries at ./lib
. (You can also run from source via cargo run
)
Now, run the omnisette-server binary. You can use --help
to get a list of options, but the defaults should be good for most setups (I recommend changing the worker
argument; it is equal to the
amount of people who can provision at the same time, so choose it based on how much traffic you expect). You might want to setup something to run omnisette-server in the background.
If you wish to build omnisette-server, run the following:
sudo apt update
sudo apt install --no-install-recommends -y git unzip curl perl make
curl https://sh.rustup.rs -sSf | sh # Choose option 1
source "$HOME/.cargo/env"
git clone https://github.com/SideStore/omnisette-server.git
cd omnisette-server
cargo build --release
curl https://apps.mzstatic.com/content/android-apple-music-apk/applemusic.apk -O
unzip applemusic.apk 'lib/*/libstoreservicescore.so' 'lib/*/libCoreADI.so'
rm applemusic.apk
./target/release/omnisette-server
Run:
docker run -d --restart always --name omnisette -p 6969:80 --volume omnisette_data:/opt/omnisette-server/lib ghcr.io/sidestore/omnisette-server:latest
Or if you want to build it locally, clone the repository and then run:
docker build . -t imagenameofyourchoosing
docker run -d --restart always --name omnisette -p 6969:80 --volume omnisette_data:/opt/omnisette-server/lib imagenameofyourchoosing
If you want to quickly setup omnisette with ansible, just use the setup-omnisette-ansible.yaml playbook. Setup your inventory and choose your desired host in the playbook. Tweak your parameters/ansible.cfg for the remote_user you use. Requires root.
ansible-playbook -i inventory setup-omnisette-ansible.yaml -k