iOS build script(better version of #151)
- Closes #151
simple wrapper around, building the project with cargo-bundle & running it with xcrun commands. the toolchains are set by default to aarch64 & can be modified with the --x86 flag or --sim for the simulator. creating a ipa from a .app file is quite easy(rename app folder to Payload and zip it) is also automated
eframe 0.28.2 is required or ([patch.crates-io] & remove web-sys.version = ">= 0.3.4, < 0.3.70")
@lucasmerlin you've done some iOS work, maybe you wanna take a quick look? 🙏
Look really cool! Is there any reason you decided not to use cargo-mobile?
I don't want to change the project to run on a iOS target. cargo-mobile compiles it as a static lib and imports it into a swift app. My goal was to have a script that would need to be installed once and can run any existing egui project without modifying it. The only thing that needs to be added is a id to the cargo.toml.
Ah, I see, that makes sense!
this should work for most Egui/eframe projects with a version > 28.1 with "wgpu" as rendering backend
Hi, thanks a lot, this looks really nice! I think this line here needs to be changed:
def parse_cargo_toml():
with open('Cargo.toml', 'rb') as f:
cargo_toml = tomllib.load(f)
# here we need to get the name (at least if it is set here, we should probably use ["package"]["name"] as a fallback somehow
app_name = cargo_toml['package']['metadata']['bundle']['name']
app_id = cargo_toml['package']['metadata']['bundle']['identifier']
return app_name, app_id
Can this be merged after that? I see there are some conflicts, probably just the versions, right?