Show HN: Terminal, a sandboxed command-line interface for iOS(github.com)
github.com
Show HN: Terminal, a sandboxed command-line interface for iOS
https://github.com/louisdh/terminal
48 comments
This project is open source: https://github.com/louisdh/terminal
This is just a very simple frontend to this library:
https://github.com/holzschu/ios_system
That library is just a simple implementation of some basic commands. It does not do any executable execution, it does not use the real system utilities. Nor does it has anything to do with Bash, or shell scripts. It’s just basically one big ‘switch’ for all commands, which are implemented in the app itself.
That library is just a simple implementation of some basic commands. It does not do any executable execution, it does not use the real system utilities. Nor does it has anything to do with Bash, or shell scripts. It’s just basically one big ‘switch’ for all commands, which are implemented in the app itself.
So, kinda like BusyBox?
Except busybox allows execution of external binaries. And BB is much (MUCH) more complete. Let that sink in.
Glad to see the developer who reserved the name was able to put it to good use. Almost all built-in MacoS app names have been taken on the iOS store [1].
[1] https://judge2020.me/rmTqJ5XV.png
[1] https://judge2020.me/rmTqJ5XV.png
Seems great! Any plans to include ssh and/or mosh?
> Any plans to include ssh and/or mosh?
I saw this mentioned on a blog that I read only last night:
Blink Shell: Mosh & SSH by Carlos Cabanero
https://itunes.apple.com/us/app/blink-shell-mosh-ssh/id11567...
It’s $20, so I haven’t tried it yet. UI looks good and reviews seem positive. I am not affiliated with the app or dev.
I saw this mentioned on a blog that I read only last night:
Blink Shell: Mosh & SSH by Carlos Cabanero
https://itunes.apple.com/us/app/blink-shell-mosh-ssh/id11567...
It’s $20, so I haven’t tried it yet. UI looks good and reviews seem positive. I am not affiliated with the app or dev.
Blink is awesome.
It's also open source and pretty easy to build yourself if you have Xcode around.
It's also open source and pretty easy to build yourself if you have Xcode around.
It is expensive, but it looked really good so I was willing to give it a try. We'll see how it works out.
Getting access to SSH private keys might be an issue.
There's Blink (blink.sh) already for that use case
Clickable: http://www.blink.sh/ - interesting as it's designed for mobile responsiveness and uses it's own protocol.
Ah keychain, of course :) Thanks for pointing that out.
I've had luck with Termius (and it's free)
In the past, it was against App Store Guidelines to have interpreters in an app. Is that no longer the case?
Could there be an app that has a Python interpreter built into it, so that the logic of the app used Python, with just a Swift/ObjC UI on top of it?
Could there be an app that has a Python interpreter built into it, so that the logic of the app used Python, with just a Swift/ObjC UI on top of it?
Yes, there are multiple apps built around a Python interpreter (Quik by GoPro is one that I know of).
I think that policy changed around 2011.
I think that policy changed around 2011.
The app in question is Pythonista. it’s kind of wonderful.
I think the guidelines still disallow JIT compilation.
Very nice so far! Could this run an actual shell (bash), with support for a .bashrc (aliases!) and readline?
Could there be compatiblity wrappers for rsync/scp, falling back to curl?
I'm also not that into green on black. Any plans for themes?
Could there be compatiblity wrappers for rsync/scp, falling back to curl?
I'm also not that into green on black. Any plans for themes?
Check out pythonista. It can do many of the things you are talking about, except in Python!
Yeah, my point exactly! If Pythonista can be on the app store, then why not a full shell?
You can't fork() in App Store apps. Which is why all of the commands on the linked Terminal app are built-ins. So a bash-like of sorts could be made to work, but it would be very different and quite limited.
Curl exists, so you could run bash if you can figure out some way to give it an executable bit (chmod doesn't exist), unless iOS refuses to run executables at all unless they're signed?
iOS refuses to run executable at all if unsigned. In fact, iOS restricts regular apps from calling fork() and exec() so you won't even have a chance to try.
That would probably get removed from the walled garden.
I thought Apple significantly relaxed the rules on running external code inside an app. Pythonista is pretty powerful these days. So I'd be hopeful a full shell with scripting support could make it into the store (still sandboxed, of course)
This is awesome - thank you! Love being able to download files via curl and search with grep under iOS. Any chance of adding a basic text editor (vi, pico, or even ed) and maintaining history across launches?
I think having a separate app for editing files makes more sense on iOS. There's iVim, for example (https://itunes.apple.com/us/app/ivim/id1266544660?mt=8).
Maintaining history sounds like a neat feature, thanks for your feedback!
Would it be possible to have an 'open' command that opens any file in their respective app? Maybe even configurable aliases like 'vim' to open files in a specific app (iVim) -- hence my other comment about support for a .bashrc
Another idea: would it be possible to mount cloud providers (Dropbox, iCloud, etc)?
Can't see how. Like all iOS apps, it's sandboxed.
Any app can access e.g. Dropbox directly, no? It'd just have to "display" it as a filesystem. Probably too much work..
You said "mount". I took you literally. (Got downvoted for it too; no idea why.)
What I had in mind was basically FUSE (like https://github.com/joe42/CloudFusion). I don't think it would violate sandboxing, but it's probably very non-trivial to implement in this kind of app
iOS apps can access third party services..
It's cool, but are there any practical uses for this?
My person impression is: not really at this time. But it's a pretty amazing proof of concept, and could grow into something immensely useful (a full local shell). I'm really glad this is open source, so there is the potential for people to contribute more substantial functionality.
Looks like it requires iOS 11
With the (apple.com) it looks like an official release
Yea. And the name is very similar to MacOS’s Terminal.app which is developed by Apple. Might want to update the title to reflect that it’s third party.
[deleted]
OK, we've changed to the project page on Github. Submitted URL was https://itunes.apple.com/app/terminal/id1323205755?mt=8&at=1....