From c8531dfe37469745c3cb15cf2e89fe9b6a5dfb7e Mon Sep 17 00:00:00 2001 From: JJTech Date: Sat, 5 Nov 2022 18:53:09 -0400 Subject: [PATCH] Update README.md (#90) * Update README.md Signed-off-by: JJTech * Add minimuxer to list of libraries in read Signed-off-by: Spidy123222 <64176728+Spidy123222@users.noreply.github.com> * Change wording for minimuxer Signed-off-by: Spidy123222 <64176728+Spidy123222@users.noreply.github.com> * Change Secret tunnel to be em-proxy and add detail Signed-off-by: Spidy123222 <64176728+Spidy123222@users.noreply.github.com> Signed-off-by: JJTech Signed-off-by: Spidy123222 <64176728+Spidy123222@users.noreply.github.com> Co-authored-by: Spidy123222 <64176728+Spidy123222@users.noreply.github.com> --- README.md | 29 ++++++++++++++++------------- 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index 9e556d27..db00b8da 100644 --- a/README.md +++ b/README.md @@ -1,38 +1,41 @@ # SideStore -> SideStore is an alternative app store for non-jailbroken iOS devices that can sideload using a VPN over the internet. +> SideStore is an *untethered, community driven* alternative app store for non-jailbroken iOS devices -[![Swift Version](https://img.shields.io/badge/swift-5.0-orange.svg)](https://swift.org/) [![License: AGPL v3](https://img.shields.io/badge/License-AGPL%20v3-blue.svg)](https://www.gnu.org/licenses/agpl-3.0) [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](https://makeapullrequest.com) [![Build and Upload SideStore](https://github.com/SideStore/SideStore/actions/workflows/build.yml/badge.svg)](https://github.com/SideStore/SideStore/actions/workflows/build.yml) -SideStore is an iOS application that allows you to sideload other apps (.ipa files) onto your iOS device with just your Apple ID. SideStore resigns apps with your personal development certificate and sends them to a desktop app called AltServer or use the SideStore VPN, which installs the resigned apps back to your device using iTunes WiFi sync or using the SideStore VPN where you can sideload at any place over wifi that supports zerotier that has internet. To prevent apps from expiring, SideStore just like AltStore will also periodically refresh your apps in the background when on the same WiFi as AltServer or using SideStore VPN over wifi on any network that includes a internet connection. +SideStore is an iOS application that allows you to sideload apps onto your iOS device with just your Apple ID. SideStore resigns apps with your personal development certificate, and then uses a [specially designed VPN](https://github.com/jkcoxson/Secret-Tunnel) in order to trick iOS into installing them. SideStore will periodically "refresh" your apps in the background, to keep their normal 7-day development period from expiring. -The goal of this project is to allow easy and a mostly computerless experience to sideload apps on iOS based devices. This project is meant as a alternative of AltStore where you can do anything AltStore can (maybe even more) but over a vpn. You will be able to use SideStore just like if you were using AltStore with benifits. - (contributions welcome! 🙂). +SideStore's goal is to provide an untethered sideloading experience. It's a community driven fork of [AltStore](https://github.com/rileytestut/AltStore), and has already implemented some of the community's most-requested features. + +(Contributions are welcome! 🙂) ## Requirements - Xcode 14 -- iOS 12.2+ (SideStore) -- macOS 10.14.4+ (TBD) -- Swift 5+ -- Visual Studio Code +- iOS 14+ +Why iOS 14? Targeting such a recent version of iOS allows us to accelerate development, especially since not many developers have older devices to test on. This is corrobated by the fact that SwiftUI support is much better, allowing us to transistion to a more modern UI codebase. ## Project Overview ### SideStore -SideStore is a alternative to AltStore and is a sandboxed iOS application like AltStore. The SideStore app target contains the vast majority of AltStore's functionality, including all the logic for downloading and updating apps through SideStore. +SideStore is a just regular, sandboxed iOS application. The AltStore app target contains the vast majority of SideStore's functionality, including all the logic for downloading and updating apps through SideStore. SideStore makes heavy use of standard iOS frameworks and technologies most iOS developers are familiar with. -### Netmuxd -[Netmuxd](https://github.com/jkcoxson/netmuxd) is a program that replaces Usbmuxd to be able to connect over a VPN reliably. It is programmed in the Rust programming language and it is open source. +### Secret Tunnel +[EM-Proxy](https://github.com/jkcoxson/em_proxy) powers the defining feature of SideStore: untethered app installation. By levaraging an App Store app with additional entitlements (WireGuard) to create the VPN tunnel for us, it allows SideStore to take advantage of [Jitterbug](https://github.com/osy/Jitterbug)'s loopback method without requiring a paid developer account. + +### Minimuxer +[Minimuxer](https://github.com/jkcoxson/minimuxer) is a lockdown muxer that can run inside iOS’s sandbox. It replicates Apple’s usbmuxd protocol on MacOS to “discover” devices to interface with wireguard On-Device. ### Roxas [Roxas](https://github.com/rileytestut/roxas) is Riley Testut's internal framework from AltStore used across many of their iOS projects, developed to simplify a variety of common tasks used in iOS development. +We're hoping to eventually eliminate our dependency on it, as it increases the amount of unnecessary Objective-C in the project. + ## Compilation Instructions -SideStore and SideServer are both fairly straightforward to compile and run if you're already an iOS or macOS developer. To compile Sidestore and/or SideServer: +SideStore is fairly straightforward to compile and run if you're already an iOS or macOS developer. Here are some basic instructions to get you started: 1. Clone the repository ```