3 ms·
Being ignorant of all things jailbreaking, is there a reason why X11 the display can't run on iOS? Surely an ios app can run a persistent background server, eg
by rs23296008n1 7y ago
Being ignorant of all things jailbreaking, is there a reason why X11 the display can't run on iOS? Surely an ios app can run a persistent background server, eg web? Or is it the swapping out/pausing that is the problem? Or is the answer to these simply a sharp edged and loud NO? We-say-so etc.
I fully get why Vnc/X11 as a screen sharing facility wouldn't work - no access. I also get why running a full devel environment would be pain for a "normal" developer to implement - again, no access.
This is all ironic because Apple market their iPad Pro as a professional device AND the cpu/ram is obviously plenty good enough (they themselves said so). The thing is more powerful than a Pi. And it meekly manages to compile quite a lot. My little Pi collection is now at 5 members and growing.
So, Apple, why can't I compile apps for ios on ipados? Hmmm? Wheels for the mind, think different etc
- ericlewis 7y agoI would guess it depends on how this was implemented really. If you’re using private apis then it is a no go. But if you were to somehow only use public apis to fill the x11 apis then it would maybe be okay.
- rock_artist 7y agoThere are 2 parts indeed. Jailbroken - provides ability of root / non-sandbox interaction. Without it, each process is sandboxed: * you don't have access to other files (you can have some ability to have shared folders but it's very scoped) * you can't do much IPC if I remember correctly. So you're capabilities are more limited. Even if those were not critical, X11 as an environment would be useless as you'd need to have it on each app you build because the AppStore requires pre-compiled or interpreted code. You're not allowed to have an app that download other apps...
- vbezhenar 7y agoYou can download JavaScript code. Though that would require rewriting an ecosystem or at least porting everything to wasm.
- josteink 7y ago> Surely an ios app can run a persistent background server, eg web? Or is it the swapping out/pausing that is the problem? I don’t know technical details, but trying to use ssh tunnels on iOS, the tunnel won’t forward until I swap iSH into the foreground, so I have to constantly swap between the browser and the terminal. Not very practical.
- earenndil 7y agoThat is not a limitation on jailbroken devices. E.G. I use ssh to run a SOCKS proxy; I just run it in the terminal and it runs forever.
- Someone 7y agoFor some definition of “server”, yes. https://www.raywenderlich.com/5817-background-modes-tutorial-getting-started https://www.raywenderlich.com/5817-background-modes-tutorial...: ”Your app is only allowed to keep running in the background in very specific cases. For example, these include playing audio, getting location updates or fetching the latest content from a server. If your task does not fall into these categories, backgrounding may not be for you. You may even find yourself with an App Store rejection if you try to cheat the system by using background modes outside the realm of their purposes, so consider yourself warned!” If you read that, your ‘server’ either will only run for a finite time determined by the OS (in practice 3 minutes), or only run at highly granular times determined by the OS (”the system uses usage patterns to determine when to best fire off a background fetch. For example, if your user opens the app at 9 AM each morning, it’s likely that a background fetch will occur sometime before that time.”) I think a X11 server that tracks updates for those three minutes of inactive time, and has a window manager that requests window updates where needed when the app becomes active could work, though. (Disclaimer: these restrictions get relaxed over time on iOS. I may have missed some recent improvements)
- scarface74 7y agoBut that still isn’t a reason to need a a jailbroken iOS device. There is no technical limitation on playing background music to keep the session open. It would require a Mac and XCode. You don’t have to pay for a developer account to install on your own device.
- Someone 7y agoNo, you don’t, but AFAIK, you’ll have to reinstall your app every week. https://codewithchris.com/deploy-your-app-on-an-iphone https://codewithchris.com/deploy-your-app-on-an-iphone: ”Note: Without enrolling in the Apple Developer Program, your app will only last for 7 days on your device. After that, you’ll have to re-deploy it to your device via Xcode. If you’re enrolled in the Apple Developer Program, you won’t have this inconvenience.” That’s “less than ideal”.
- 7y ago