Closed Alexie7777 closed 4 years ago
Apple's App Store Review Guideline 4.2.7a states:
The app must only connect to a user-owned host device that is a personal computer or dedicated game console owned by the user, and both the host device and client must be connected on a local and LAN-based network.
Therefore, Moonlight does not allow you to add PCs that aren't on your local network anymore. This was a hard requirement by Apple's App Store Review team.
If you have to add your PC remotely, you may have success using a VPN like ZeroTier which looks like a LAN connection to other apps.
Wouldn't it be possible to make/release a dedicated version that only allows desktop access like Shadow reverted to after the hassle with the quoted rules or restrict internet hosts to that functionality?
Nope, I proposed this exact thing to them and they rejected it.
The first or the latter one (or both)? Was there something different that you proposed compared to how Shadow is doing it with their revised tvOS/iOS app?
Both. My proposed solution was essentially to act like a remote desktop app, similar to Microsoft Remote Desktop.
I asked about other game streaming apps that do the same thing, and they told me they are investigating those too for possible policy violations.
May I ask about the timeline when you had this "discussion" with Apple? I'm asking because the Shadow app was kicked from the App Store for exactly that reason, but then re-allowed after removing the direct game access and reverting to remote desktop only. Their argument sounds like you had asked before that happened? Maybe it's worth another try with this precedent? Or they have additional information what is necessary to be allowed into the App Store like the Shadow app was.
The talks were after Shadow was re-approved.
I'm not going to be contesting this with Apple again anytime soon. Due to the review proceedings, I was left unable to ship any new Moonlight builds (even bugfixes) for over 3 months while this whole situation played out. If Nvidia had released a GFE update that required a Moonlight update, iOS users would have been unable to use the app anymore. It's simply not worth the risk to contest it.
How easy is it to disable the block should one build from source?
It is pretty easy. There is just one definition of ENABLE_APP_STORE_RESTRICTIONS
that enforces the App Store restrictions. Just make sure that you don't have set it during build and all App Store restrictions should be disabled (cf this).
If you have to add your PC remotely, you may have success using a VPN like ZeroTier which looks like a LAN connection to other apps.
Since ZeroTier can't be used on tvos, what are the options other then source building (guess it'd also require apple dev account to deploy to the box, atm having none) ? EDIT: I guess joining separate LANs with VPN would work but encryption overhead etc would kill its purpose
If you have to add your PC remotely, you may have success using a VPN like ZeroTier which looks like a LAN connection to other apps.
Since ZeroTier can't be used on tvos, what are the options other then source building (guess it'd also require apple dev account to deploy to the box, atm having none) ? EDIT: I guess joining separate LANs with VPN would work but encryption overhead etc would kill its purpose
This guy gets it. Although you typically want encryption, there is unnecessary overhead here with regards to streaming service providers infrastructure services. I’m planning to build from source and remove the limitation myself. I’m not interested in paying Apple the $99 annually at this time though. So I will go another step further and build a CI/CD server to push the build every week or as needed. If you’re interested in helping out, or learning from my experience, don’t hesitate to reach out. I’m so appreciative of moonlight being open source and these companies are all seemingly trying to stifle remote streaming service providers offerings. It wreaks of anti competitive action.
Please can someone host builds with this enabled? People can sideload them with AltStore or a jailbreak
Please can someone host builds with this enabled? People can sideload them with AltStore or a jailbreak
Please?
If no one else is going to maybe I could but I’m not sure if I need a Mac OS VM to build it (I don’t have a Mac)
I'm installing Mac OS in a VM now, if I get it built I'll upload an IPA
I'm installing Mac OS in a VM now, if I get it built I'll upload an IPA
Had any success yet? I'm currently installing Mac OS in a VM as well, will post if I have anything to share.
I have actual macOS physical systems but in order for me to do this, I would have to pay the $99 Apple Developer fee or be required to rebuild it every 7(days). That is the requirement if you do not jailbreak your iOS device which I had no intention of doing. This is really a headache and because I can use other apps like Splashtop, I've just stopped using Moonlight. I expected more "push back" by Moonlight senior dev towards Apple's anticompetitive tactics. How are you guys getting around the Apple developer costs? Or do you plan to use CI/CD to just keep pushing a new version every 7, or whatever number, of days?
If no one else is going to maybe I could but I’m not sure if I need a Mac OS VM to build it (I don’t have a Mac)
As far as I know, it requires Xcode and TestFlight on macOS, so you do need an Apple system and you need an Apple Developer account. I've been an Apple Developer before so I'm familiar with the processes and procedures, but I'm open to hearing if there are other ways this can be done. I just don't want to jailbreak my device.
If no one else is going to maybe I could but I’m not sure if I need a Mac OS VM to build it (I don’t have a Mac)
As far as I know, it requires Xcode and TestFlight on macOS, so you do need an Apple system and you need an Apple Developer account. I've been an Apple Developer before so I'm familiar with the processes and procedures, but I'm open to hearing if there are other ways this can be done. I just don't want to jailbreak my device.
I'm using a jailbreak for signing, you could also use altstore for signing.
Does anyone know how to fix this?
https://drive.google.com/drive/folders/13ebjY2qSVJebr2hLjTXTHkD981bl0Tb1?usp=sharing
Here you go. ipa built with the app store restriction removed
https://drive.google.com/drive/folders/13ebjY2qSVJebr2hLjTXTHkD981bl0Tb1?usp=sharing
Here you go. ipa built with the app store restriction removed
Thank you very much. Do you happen to know why I got that error above?
Well it seems like even without the restriction on it won't work :/
Well it seems like even without the restriction on it won't work :/
I was afraid of that. Maybe the Moonlight discord would be kind enough to give some advice. Have you tried there?
Well it seems like even without the restriction on it won't work :/
I was afraid of that. Maybe the Moonlight discord would be kind enough to give some advice. Have you tried there?
How did you get it to build tho? By looking at the commits I found that https://github.com/moonlight-stream/moonlight-ios/commit/dbab07838d29388ac9e547905e00836d54c6dd17 Is the one where it’s introduced, by setting these values to false it should work.
https://drive.google.com/drive/folders/13ebjY2qSVJebr2hLjTXTHkD981bl0Tb1?usp=sharing Here you go. ipa built with the app store restriction removed
Thank you very much. Do you happen to know why I got that error above?
You needed to run this command in terminal. 'git submodule update --init --recursive' you did not have the core part of moonlight added yet
Well it seems like even without the restriction on it won't work :/
I tried at least. sorry it did not work for you
Well it seems like even without the restriction on it won't work :/
I tried at least. sorry it did not work for you
But did it work for you?
Well it seems like even without the restriction on it won't work :/
I tried at least. sorry it did not work for you
But did it work for you?
I just built it with the flag for app store restrictions turned off. I personally do not know how to connect to my pc remotely
It seems like the issue is coming from a unreachable file: http://ip-here:47989/serverinfo, I’ve tried forwarding already but it still isn’t reachable, only through my local network. Other than that, removing the flag actually seems to work.
It seems like the issue is coming from a unreachable file: http://ip-here:47989/serverinfo, I’ve tried forwarding already but it still isn’t reachable, only through my local network. Other than that, removing the flag actually seems to work.
did you install this tool to check that your pc can host over the internet? https://github.com/moonlight-stream/Internet-Hosting-Tool
It seems like the issue is coming from a unreachable file: http://ip-here:47989/serverinfo, I’ve tried forwarding already but it still isn’t reachable, only through my local network. Other than that, removing the flag actually seems to work.
did you install this tool to check that your pc can host over the internet? https://github.com/moonlight-stream/Internet-Hosting-Tool
Yep, canyouseeme.org even says the port is opened but yet I can only reach locally. I’ve also tried using xampp to host the serverinfo file but seems like it needs to be updated after connecting so that won’t work either.
Just to confirm, you're just typing your IP address in the Add PC field, not a URL or anything like that, correct?
Some routers don't allow you to access services via the WAN/Internet address of your router while you're on the LAN (called NAT hairpinning). Make sure you're not connected to the same network as your PC and router when you are trying to add the PC using the WAN IP address.
Just to confirm, you're just typing your IP address in the Add PC field, not a URL or anything like that, correct?
Some routers don't allow you to access services via the WAN/Internet address of your router while you're on the LAN (called NAT hairpinning). Make sure you're not connected to the same network as your PC and router when you are trying to add the PC using the WAN IP address.
Thank you so much it’s working now, it was because I was connecting from the same IP address.
Just to confirm, you're just typing your IP address in the Add PC field, not a URL or anything like that, correct?
Some routers don't allow you to access services via the WAN/Internet address of your router while you're on the LAN (called NAT hairpinning). Make sure you're not connected to the same network as your PC and router when you are trying to add the PC using the WAN IP address.
Am I allowed to redistribute the IPA online? @cgutman
should I have asked for permission before posting the IPA @cgutman if so I am sorry for not doing so
Yes, you're allowed to redistribute binaries from GPLv3 licensed projects as long as you link back to the source code.
Just to confirm, you're just typing your IP address in the Add PC field, not a URL or anything like that, correct? Some routers don't allow you to access services via the WAN/Internet address of your router while you're on the LAN (called NAT hairpinning). Make sure you're not connected to the same network as your PC and router when you are trying to add the PC using the WAN IP address.
Am I allowed to redistribute the IPA online? @cgutman
feel free to message me when you need me to build new ipa files.
I have uploaded the file to my repo at https://boazvdwansem.github.io/ios-repo/ for anyone interested
I have uploaded the file to my repo at https://boazvdwansem.github.io/ios-repo/ for anyone interested
Thanks for plugging away at this, and just to confirm: You were trying to connect to your WAN IP from inside your LAN and that is why you said it did not work? In order to connect to your WAN IP, you need to be on the Internet (WAN).
When going to your URL, I do not see where there is a moonlight IPA listed.
Is the IPA you are hosting the same one that was provided by don17sch? I already downloaded his and so now my next question is, do you need to keep rebuilding this every 7 days? Or is there a way around that limitation without paying Apple $99/year?
I have uploaded the file to my repo at https://boazvdwansem.github.io/ios-repo/ for anyone interested
Thanks for plugging away at this, and just to confirm: You were trying to connect to your WAN IP from inside your LAN and that is why you said it did not work? In order to connect to your WAN IP, you need to be on the Internet (WAN).
When going to your URL, I do not see where there is a moonlight IPA listed.
Is the IPA you are hosting the same one that was provided by don17sch? I already downloaded his and so now my next question is, do you need to keep rebuilding this every 7 days? Or is there a way around that limitation without paying Apple $99/year?
My IPA was built with the $99 a year license already attatched
I have uploaded the file to my repo at https://boazvdwansem.github.io/ios-repo/ for anyone interested
Thanks for plugging away at this, and just to confirm: You were trying to connect to your WAN IP from inside your LAN and that is why you said it did not work? In order to connect to your WAN IP, you need to be on the Internet (WAN). When going to your URL, I do not see where there is a moonlight IPA listed. Is the IPA you are hosting the same one that was provided by don17sch? I already downloaded his and so now my next question is, do you need to keep rebuilding this every 7 days? Or is there a way around that limitation without paying Apple $99/year?
My IPA was built with the $99 a year license already attached
Would you be interested in forking and adding it to your Github? I believe it would be a popular addition to your repo if you choose to do that. I intended to do this same thing myself, but you guys beat me to it. Whatever you decide, thanks so much for the support from all of you that have helped. I'm very grateful to see others who feel the same way I do about this restriction from Apple. I feel really bad for Cameron who got put in this position by Apple.
I have uploaded the file to my repo at https://boazvdwansem.github.io/ios-repo/ for anyone interested
Thanks for plugging away at this, and just to confirm: You were trying to connect to your WAN IP from inside your LAN and that is why you said it did not work? In order to connect to your WAN IP, you need to be on the Internet (WAN).
When going to your URL, I do not see where there is a moonlight IPA listed.
Is the IPA you are hosting the same one that was provided by don17sch? I already downloaded his and so now my next question is, do you need to keep rebuilding this every 7 days? Or is there a way around that limitation without paying Apple $99/year?
I tried connecting inside my LAN to WAN, that was the issue. The URL I posted is to add in a apt package manager if jailbroken (Cydia for example). The only way around the 7 days limitation that I know of is AltStore/ jailbreak. I have uploaded an IPA I built myself to: https://github.com/boazvdwansem/ios-repo/tree/main/ipas, but it should be t almost identical as the one @don17sch posted
I have uploaded the file to my repo at https://boazvdwansem.github.io/ios-repo/ for anyone interested
Thanks for plugging away at this, and just to confirm: You were trying to connect to your WAN IP from inside your LAN and that is why you said it did not work? In order to connect to your WAN IP, you need to be on the Internet (WAN). When going to your URL, I do not see where there is a moonlight IPA listed. Is the IPA you are hosting the same one that was provided by don17sch? I already downloaded his and so now my next question is, do you need to keep rebuilding this every 7 days? Or is there a way around that limitation without paying Apple $99/year?
I tried connecting inside my LAN to WAN, that was the issue. The URL I posted is to add in a apt package manager if jailbroken (Cydia for example). The only way around the 7 days limitation that I know of is AltStore/ jailbreak. I have uploaded an IPA I built myself to: https://github.com/boazvdwansem/ios-repo/tree/main/ipas, but it should be t almost identical as the one @don17sch posted
Awesome, thanks for clarifying, and thanks for all the help. You guys are awesome.
I have uploaded the file to my repo at https://boazvdwansem.github.io/ios-repo/ for anyone interested
Thanks for plugging away at this, and just to confirm: You were trying to connect to your WAN IP from inside your LAN and that is why you said it did not work? In order to connect to your WAN IP, you need to be on the Internet (WAN). When going to your URL, I do not see where there is a moonlight IPA listed. Is the IPA you are hosting the same one that was provided by don17sch? I already downloaded his and so now my next question is, do you need to keep rebuilding this every 7 days? Or is there a way around that limitation without paying Apple $99/year?
My IPA was built with the $99 a year license already attached
Would you be interested in forking and adding it to your Github? I believe it would be a popular addition to your repo if you choose to do that. I intended to do this same thing myself, but you guys beat me to it. Whatever you decide, thanks so much for the support from all of you that have helped. I'm very grateful to see others who feel the same way I do about this restriction from Apple. I feel really bad for Cameron who got put in this position by Apple.
forking this does not make sense as all I did was turn off a flag in build settings. also if I fork it you will still need to sign it yourself when you build it. I only signed those specific IPA files
I have uploaded the file to my repo at https://boazvdwansem.github.io/ios-repo/ for anyone interested
Thanks for plugging away at this, and just to confirm: You were trying to connect to your WAN IP from inside your LAN and that is why you said it did not work? In order to connect to your WAN IP, you need to be on the Internet (WAN). When going to your URL, I do not see where there is a moonlight IPA listed. Is the IPA you are hosting the same one that was provided by don17sch? I already downloaded his and so now my next question is, do you need to keep rebuilding this every 7 days? Or is there a way around that limitation without paying Apple $99/year?
My IPA was built with the $99 a year license already attached
Would you be interested in forking and adding it to your Github? I believe it would be a popular addition to your repo if you choose to do that. I intended to do this same thing myself, but you guys beat me to it. Whatever you decide, thanks so much for the support from all of you that have helped. I'm very grateful to see others who feel the same way I do about this restriction from Apple. I feel really bad for Cameron who got put in this position by Apple.
forking this does not make sense as all I did was turn off a flag in build settings. also if I fork it you will still need to sign it yourself when you build it. I only signed those specific IPA files
Thank you for clarifying.
I have uploaded the file to my repo at https://boazvdwansem.github.io/ios-repo/ for anyone interested
Thanks for plugging away at this, and just to confirm: You were trying to connect to your WAN IP from inside your LAN and that is why you said it did not work? In order to connect to your WAN IP, you need to be on the Internet (WAN). When going to your URL, I do not see where there is a moonlight IPA listed. Is the IPA you are hosting the same one that was provided by don17sch? I already downloaded his and so now my next question is, do you need to keep rebuilding this every 7 days? Or is there a way around that limitation without paying Apple $99/year?
My IPA was built with the $99 a year license already attached
Would you be interested in forking and adding it to your Github? I believe it would be a popular addition to your repo if you choose to do that. I intended to do this same thing myself, but you guys beat me to it. Whatever you decide, thanks so much for the support from all of you that have helped. I'm very grateful to see others who feel the same way I do about this restriction from Apple. I feel really bad for Cameron who got put in this position by Apple.
forking this does not make sense as all I did was turn off a flag in build settings. also if I fork it you will still need to sign it yourself when you build it. I only signed those specific IPA files
It’s possible to use someone else’s certificate? I thought that to install it to my device I’d need to sign it myself.
I have uploaded the file to my repo at https://boazvdwansem.github.io/ios-repo/ for anyone interested
Thanks for plugging away at this, and just to confirm: You were trying to connect to your WAN IP from inside your LAN and that is why you said it did not work? In order to connect to your WAN IP, you need to be on the Internet (WAN). When going to your URL, I do not see where there is a moonlight IPA listed. Is the IPA you are hosting the same one that was provided by don17sch? I already downloaded his and so now my next question is, do you need to keep rebuilding this every 7 days? Or is there a way around that limitation without paying Apple $99/year?
I tried connecting inside my LAN to WAN, that was the issue. The URL I posted is to add in a apt package manager if jailbroken (Cydia for example). The only way around the 7 days limitation that I know of is AltStore/ jailbreak. I have uploaded an IPA I built myself to: https://github.com/boazvdwansem/ios-repo/tree/main/ipas, but it should be t almost identical as the one @don17sch posted
Awesome, thanks for clarifying, and thanks for all the help. You guys are awesome.
All the credit goes to @cgutman, @abusse and @don17sch. All I did was rebuilt the IPA and post it for others to download. I also made a Reddit post which already has ~200 upvotes: https://www.reddit.com/r/jailbreak/comments/p0pxiu/free_release_moonlight_streaming_service_unlocked/?utm_source=share&utm_medium=ios_app&utm_name=iossmf.
I have uploaded the file to my repo at https://boazvdwansem.github.io/ios-repo/ for anyone interested
Thanks for plugging away at this, and just to confirm: You were trying to connect to your WAN IP from inside your LAN and that is why you said it did not work? In order to connect to your WAN IP, you need to be on the Internet (WAN). When going to your URL, I do not see where there is a moonlight IPA listed. Is the IPA you are hosting the same one that was provided by don17sch? I already downloaded his and so now my next question is, do you need to keep rebuilding this every 7 days? Or is there a way around that limitation without paying Apple $99/year?
My IPA was built with the $99 a year license already attached
Would you be interested in forking and adding it to your Github? I believe it would be a popular addition to your repo if you choose to do that. I intended to do this same thing myself, but you guys beat me to it. Whatever you decide, thanks so much for the support from all of you that have helped. I'm very grateful to see others who feel the same way I do about this restriction from Apple. I feel really bad for Cameron who got put in this position by Apple.
forking this does not make sense as all I did was turn off a flag in build settings. also if I fork it you will still need to sign it yourself when you build it. I only signed those specific IPA files
It’s possible to use someone else’s certificate? I thought that to install it to my device I’d need to sign it myself.
I do not know the answer for sure. maybe @cgutman knows?
Is it the IOS limitation?