Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix github release asset names #43

Closed
noah978 opened this issue Jul 7, 2021 · 7 comments
Closed

Fix github release asset names #43

noah978 opened this issue Jul 7, 2021 · 7 comments

Comments

@noah978
Copy link

noah978 commented Jul 7, 2021

This may come off as sounding petty or unimportant, but I'm developing an application that automatically grabs the latest IPA releases using a whitelist of Github apps (that's the shortened explanation anyways). But essentially, the Github releases for this app always have the file extension {name}.ipa.zip when my application assumes that its should simply be a .ipa. An .ipa is already a zipped archive, and you are simply exposing this fact.

So what I'm trying to say is, could you simply name the github asset {name).ipa in the future?

If not, just close the issue and move on. Thanks!

@zydeco
Copy link
Owner

zydeco commented Aug 16, 2021

The reason for having the ipa zipped (it's not just renamed, but a zip archive containing the ipa), is to be able to download it on iOS and install it with AltStore, without Safari trying (and failing) to install the downloaded ipa (on iOS 13 IIRC, not sure if it happens on 14).

@eduo
Copy link

eduo commented Sep 15, 2021

Quick confirmation that on 14 the IPA is downloaded and can be opened from the Files app sharing it to altstore.

@eduo
Copy link

eduo commented Jan 4, 2022

This may come off as sounding petty or unimportant, but I'm developing an application that automatically grabs the latest IPA releases using a whitelist of Github apps (that's the shortened explanation anyways). But essentially, the Github releases for this app always have the file extension {name}.ipa.zip when my application assumes that its should simply be a .ipa. An .ipa is already a zipped archive, and you are simply exposing this fact.

So what I'm trying to say is, could you simply name the github asset {name).ipa in the future?

If not, just close the issue and move on. Thanks!

A bit off-topic but is this tool available in a repository? I was trying to do something similar but bulding a repo of my favorite apps pointing to their IPAs and it seems like it's a similar goal.

@noah978
Copy link
Author

noah978 commented Jan 4, 2022

A bit off-topic but is this tool available in a repository? I was trying to do something similar but bulding a repo of my favorite apps pointing to their IPAs and it seems like it's a similar goal.

It’s a little sparse in documentation on how to use, but you’ll find all of my work with AltStore Source and GitHub parsing available in QuarkSources/quarksources.github.io

The whole thing uses a GitHub workflow to automatically run update.py, which uses sourceUtil.py to handle the updates.

You’ll have to do some amounts of modification depending on how you want things to output since mine is currently modifying json files that are in AltStore Source format.

You are also welcome to just point out some apps to me and I can just add them to Quantum Source or another AltStore Source.

@eduo
Copy link

eduo commented Jan 7, 2022

It’s a little sparse in documentation on how to use, but you’ll find all of my work with AltStore Source and GitHub parsing available in QuarkSources/quarksources.github.io

Oh! I hadn't realized you ran QS. I used to have your repo added and now that I've reinstalled I have it in my to-do list :D

For myself it was just the emulators I use that I wanted to add. Not all use github releases functionality, which was going to be the tricky part. I'l list them below for completeness sake, but please don't consider this a demand to add them to your repo. I wouldn't dare impose that way (and you have many of then already anyway!) :D

These have releases in the github project and I know they'd be easy to automate:

Minivmac4ios by @zydeco (gracias, Jesús!) - https://github.com/zydeco/minivmac4ios/releases
Mame4ios by @yoshisuga - https://github.com/yoshisuga/MAME4iOS/releases
Ready by @T-Pau: (Commodore 16/64, VIC-20, Spectrum ZX) - https://github.com/T-Pau/Ready/releases
ActiveGS (@yoshisuga's port) - https://github.com/yoshisuga/activegs-ios/releases
Basilisk II: https://github.com/zydeco/macemu/tree/ios

The tricky part was going to scrape these, which release each in their own way (as far as I've seen) and at least one of them uses a dynamic page that loads via javascript:

ScummVM: https://www.scummvm.org/downloads/#release
Retroarch: https://www.retroarch.com/?page=platforms
Play! (PS2): https://purei.org/downloads/play/stable/?C=M;O=D
Yaba Sanshiro 2 (Sega Saturn): https://www.uoyabause.org/static_pages/download
Flycast (Dreamcast): https://flyinghead.github.io/flycast-builds/
iDOS: https://github.com/litchie/dospad/releases/tag/2.1 (in reality the most recent are in the patreon, but they'll eventually trickle down)

(dolphin, UTM and provenance too, but since they have their own repos I don't mind as much)

Then there's iAmiga, that as no current concerted effort and at least three projects sort of work on it (I tend to compile by hand from the first one)
https://github.com/simontoens/iAmiga
https://github.com/mOoNsHaDoOo/iAmiga
https://github.com/emufreak/iAmiga

@noah978
Copy link
Author

noah978 commented Jan 9, 2022

It is certainly not unreasonable to ask me to add some apps to my Sources! I'm always taking requests for quality iOS apps and the open source ones that release on Github are especially easy for me to add since I know I can include automatic updates.

I also went and decided to work around the whole issue with the IPA being zipped on the Github releases for minivmac4ios. So should zydeco release another update and the IPA is zipped again, it should get handled correctly. It now uploads the unzipped version to the Quarklibrary IPA library on the quarksources releases page. So theoretically I now have the capacity to programmatically upload and store IPAs as needed for distribution now too.

As for all the easy Github apps, they are added and should be functional on QuantumSource nowQ As for the more complex ones that have an independent release method, it could be a bit more tricky, but if I have the time I might write a webscraping function for them. I should be able to do Retroarch fairly easily, but I'll have to see once I dig in.

(And btw, I automatically pull from each of the Dolphin, UTM, and Provenance AltSources. So all of their apps are also contained within QuantumSource. If you have both installed, you might run into duplicate issues.)

As for iAmiga, I don't think I'll be able to setup auto-updates with it's chaotic state of development, but if you have a self-compiled IPA you want to send my way, I'd be happy to get another emulator added to the collection!

@zydeco
Copy link
Owner

zydeco commented May 26, 2022

It's named .ipa in the latest release, since it also works easily with AltStore's new "Sideload .ipa" option

@zydeco zydeco closed this as completed May 26, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants