7 ms·
I am very surprised that Apple allowed this on the actual App Store (and not just TestFlight), but I'm also pleased! Hopefully it will be accessible to more peo
by snazz 6y ago
I am very surprised that Apple allowed this on the actual App Store (and not just TestFlight), but I'm also pleased! Hopefully it will be accessible to more people now.
- simonh 6y agoThere are a number of command line shells available on iOS, right up to full blown programming environments in Python, Lua, C# and others. Pythonista is pretty mature, comes with a command line interpreter and you can get a very capable user created enhanced shell environment for it.
- kstrauser 6y agoIn the context of Python, don't forget Pyto! I use it lots for scripting tricky bits in the Shortcuts app in a real programming language. It has nice Shortcuts actions for "run this Python code" and "get the results of that code you ran earlier".
- simonh 6y agoPyto is really interesting, it's not as polished at Pythonista but I appreciate the very frequent updates. It's come a long way pretty quickly.
- kstrauser 6y agoSame. It's way rougher around the edges than Pythonista is, but it's moving fast and adding nice support for new iOS features. For one example, from what I can tell x-callback-url is the only way to get stuff into Pythonista (and I haven't found a way to get stuff back out of it), but Pyto natively supports Shortcuts actions. There are lots of other things like that. Pythonista is much more pleasant today for actually writing code in, though.
- Macha 6y agoThe fact that uname -a reports "Linux" and not iOS or BSD implies it's not some sort of contained userland, it likely has no access to anything outside it's sandbox, and can't run GUI apps means Apple are unlikely to care too much.
- saagarjha 6y agouname reports what we tell it to report ;) https://github.com/ish-app/ish/blob/master/kernel/uname.c https://github.com/ish-app/ish/blob/master/kernel/uname.c. iSH is sandboxed as any other app on the store would be, but some have had success running GUI apps and connecting to them via VNC.
- yjftsjthsd-h 6y ago> strcpy(uts->release, "4.20.69-ish"); Nice:) got a chuckle out of me...
- woadwarrior01 6y agoA similar app, a-Shell[1] has been up on the App Store for a almost a year now. [1]: https://holzschu.github.io/a-Shell_iOS/ https://holzschu.github.io/a-Shell_iOS/
- coder543 6y agoWhat’s the comparison between a-Shell and iSH? I’ve somehow never heard of the former, but I have repeatedly heard about the latter and used it.
- least 6y agoa-Shell doesn't try to run a full linux environment; it just gives you access to a lot of common utilities, which presumably was an easier sell to get on the app store. The fact that iSH Shell allows you to download and run arbitrary code from alpine's repos is what made many think that it'd never leave TestFlight.
- quaa55 6y agoa-shell uses ios_system https://github.com/holzschu/ios_system/ https://github.com/holzschu/ios_system/ and can install WASM packages (if they exist?) iSH emulates 32-bit alpine x86 and can install things from apk
- waterhouse 6y ago"A project to get a Linux shell running on iOS, using usermode x86 emulation and syscall translation." https://github.com/ish-app/ish/ https://github.com/ish-app/ish/ So theoretically it could be like an isolated computer game and have no access to anything from the underlying iOS environment. (Maybe it does let you access iOS's filesystem—it's not clear to me at a first glance.) I have the jaded feeling that this has to do with how it got approved. https://github.com/ish-app/ish/wiki/Mounting-other-file-providers https://github.com/ish-app/ish/wiki/Mounting-other-file-prov... says: "Additionally, if jailbroken or using the psychic paper exploit (not available through TestFlight nor will we help you do it), you can also mount using real, absolute paths. To do so run "mount -t real <src> <dst>", where <src> is the absolute path from the root of iOS and <dst> is the location in iSH to mount the file." Which suggests that you can only touch the underlying iOS if you've done an exploit.
- saagarjha 6y agoAs mentioned on that page, you can essentially mount whatever shows up in the Files app, but you don't have full filesystem access–iSH is a normal App Store app and is sandboxed as such.
- kelnos 6y agoInteresting, I wonder why they used x86 emulation and didn't just run ARM binaries on it.
- chadlavi 6y agoAmen