TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

A-Shell: Terminal for iOS

352 pointsby _venkatasgabout 5 years ago

25 comments

alexhutchesonabout 5 years ago
This is extremely cool.<p>Is there any documentation on what shell syntax this supports? I assume it&#x27;s not running a standard shell like Bash or zsh.<p>Edit: <a href="https:&#x2F;&#x2F;github.com&#x2F;holzschu&#x2F;ios_system&#x2F;blob&#x2F;master&#x2F;README.md" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;holzschu&#x2F;ios_system&#x2F;blob&#x2F;master&#x2F;README.md</a> confirms its not running sh, bash, or zsh, and has some additional details on the available commands. I still think it would be nice for this to be more explicit, but the information is out there.
评论 #22990840 未加载
5-about 5 years ago
LibTerm is very similar (also based on ios_system): <a href="https:&#x2F;&#x2F;libterm.app&#x2F;" rel="nofollow">https:&#x2F;&#x2F;libterm.app&#x2F;</a><p>iSH uses a completely different approach -- it&#x27;s a custom x86+linux emulator that runs complete unaltered alpine linux userland: <a href="https:&#x2F;&#x2F;ish.app&#x2F;" rel="nofollow">https:&#x2F;&#x2F;ish.app&#x2F;</a>
评论 #22990560 未加载
评论 #22990949 未加载
评论 #22995279 未加载
评论 #22993250 未加载
评论 #22994253 未加载
jedisct1about 5 years ago
I use iSH, that provides a complete Alpine Linux environment: <a href="https:&#x2F;&#x2F;ish.app" rel="nofollow">https:&#x2F;&#x2F;ish.app</a><p>A-Shell seems to be very limited and additional packages cannot be installed. What are uses cases for which A-Shell would be a better fit than iSH?
评论 #22990547 未加载
评论 #22991217 未加载
评论 #22994533 未加载
评论 #22998914 未加载
thesuperbigfrogabout 5 years ago
A-Shell looks very promising. If I were still using iOS, I would install it and try it out in a heartbeat.<p>On Android, I love using Termux (<a href="https:&#x2F;&#x2F;termux.com&#x2F;" rel="nofollow">https:&#x2F;&#x2F;termux.com&#x2F;</a>).<p>If I have a computer in my pocket, I should be able to use it as a computer, not merely a consumption device
评论 #22991066 未加载
评论 #22995309 未加载
waynecochranabout 5 years ago
Great! I&#x27;m glad Apple has changed its rules concerning having an embedded interpreter:<p><a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=14809096" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=14809096</a>
dmitshurabout 5 years ago
This was fun to try as a little preview of what it’ll feel like to have an ARM-based MacBook.<p>Bummer there’s no git¹.<p>I was curious to try to install Go just to see how far I’d get before being blocked. Was able to download the source tarball and extract it (using curl and tar as 2 separate commands; piping curl into tar didn’t work). But then can’t execute make.bash because there’s no bash.<p>[1] There&#x27;s rationale and an alternative described at <a href="https:&#x2F;&#x2F;github.com&#x2F;holzschu&#x2F;ios_system#adding-more-commands" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;holzschu&#x2F;ios_system#adding-more-commands</a>.
评论 #22993332 未加载
评论 #22993030 未加载
stblackabout 5 years ago
In this app, it appears we are operationally limited to<p>&#x2F;private&#x2F;var&#x2F;mobile&#x2F;Containers&#x2F;Data&#x2F;Application&#x2F;49F47295-F9D8-4FD7-8F34-redactedxxxx&#x2F;<p>The default folder is &#x2F;private&#x2F;var&#x2F;mobile&#x2F;Containers&#x2F;Data&#x2F;Application&#x2F;49F47295-F9D8-4FD7-8F34-redactedxxxx&#x2F;Documents<p>I am able to cd &#x2F; and can see the following folders<p>&#x2F;Applications<p>&#x2F;bin<p>&#x2F;cores<p>&#x2F;dev<p>&#x2F;Developer<p>&#x2F;etc<p>&#x2F;Library<p>&#x2F;private<p>&#x2F;sbin<p>&#x2F;System<p>&#x2F;tmp<p>&#x2F;usr<p>&#x2F;var<p>... but can&#x27;t cd into any of them. &quot;permission denied&quot;.<p>None of this is a surprise, of course.
评论 #22992329 未加载
评论 #22992120 未加载
addajonesabout 5 years ago
Terminus is excellent for iOS. <a href="https:&#x2F;&#x2F;apps.apple.com&#x2F;us&#x2F;app&#x2F;termius-ssh-client&#x2F;id549039908" rel="nofollow">https:&#x2F;&#x2F;apps.apple.com&#x2F;us&#x2F;app&#x2F;termius-ssh-client&#x2F;id549039908</a>
评论 #22994372 未加载
liamcardenasabout 5 years ago
This may be a dumb question...<p>To my knowledge, the reason no “real” terminal exists for iOS is because it violates the App Store rules. It is prohibited to download and execute arbitrary code, with a few exceptions.<p>One exception is JavaScript, which must be run inside of JavaScript Core [1]. What if someone simulated x86 and Linux _in JavaScript_ and then built a terminal and file system on top of it? Would that be in accordance with the App Store rules (since it would be sandboxed in Apple’s JS core)? Would it even be technically feasible? Or too slow for any serious usage?<p>[1] from the App Store rules:<p>4.7 HTML5 Games, Bots, etc. Apps may contain or run code that is not embedded in the binary (e.g. HTML5-based games, bots, etc.), as long as code distribution isn’t the main purpose of the app, the code is not offered in a store or store-like interface, and provided that the software (1) is free or purchased using in-app purchase; (2) only uses capabilities available in a standard WebKit view (e.g. it must open and run natively in Safari without modifications or additional software); your app must use WebKit and JavaScript Core to run third-party software and should not attempt to extend or expose native platform APIs to third-party software; (3) is offered by developers that have joined the Apple Developer Program and signed the Apple Developer Program License Agreement; (4) does not provide access to real money gaming, lotteries, or charitable donations; (5) adheres to the terms of these App Review Guidelines (e.g. does not include objectionable content); and (6) does not offer digital goods or services for sale. Upon request, you must provide an index of software and metadata available in your app. It must include Apple Developer Program Team IDs for the providers of the software along with a URL which App Review can use to confirm that the software complies with the requirements above.
评论 #22993700 未加载
评论 #22993608 未加载
vedosityabout 5 years ago
I was considering using lib-tex (the library implementing texlive 2019 for this shell) last week for an iOS app I’m working on that needs to generate basic LaTeX images. It’s really impressive, these programs running in A-Shell are modified by renaming their `main()` function and making sure global&#x2F;static variables are cleaned up so they can run as a separate thread in-process instead of spawning a separate process. I decided to use the more limited KaTeX instead because it sounds like a maintenance nightmare, making sure nothing leaks and updating everything every time a new version comes out...<p>I wonder if that process can be automated to a point where you could “lib-ize” any C&#x2F;C++ project (sed replacing malloc&#x2F;free with something that cleans up when the process “exits”, replacing exit&#x2F;fork&#x2F;etc, replacing static). I think that would really open up the number of interpreters available on iOS.
thecybernerdabout 5 years ago
Is there any way I could use a USB C to DB9 console cable on an iPad Pro with this? I’m thinking this could be a great setup for working in the cramped data center.
评论 #22990934 未加载
jsjohnstabout 5 years ago
Why is the download so large I wonder? Almost 650mb app.
评论 #22991108 未加载
评论 #22991055 未加载
nameloswabout 5 years ago
I jailbreak several iOS devices just to have terminal many years ago, and it was quite an interesting experience. I always hope Apple could let user access terminal in iOS, at least in developer mode. After all, it&#x27;s still BSD based just like MacOS, and iPad Pro is so powerful but nowhere to go for a programmer.<p>Sadly, it seems Apple doesn&#x27;t really care about this.
评论 #22992905 未加载
hyperpalliumabout 5 years ago
Doesn&#x27;t Apple ToS forbid programming (excepting embedded lua etc)? Did that change?<p>Android 10 is locking down <a href="http:&#x2F;&#x2F;termux.com" rel="nofollow">http:&#x2F;&#x2F;termux.com</a>, and wifi ipads have higher compute&#x2F;$. If this works at full speed, I might get one.
评论 #22991688 未加载
ulzerajabout 5 years ago
It hangs if I run ssh-keygen or ssh-keygen -t ed25519. Tested on a recent ipad pro and iphone x.
评论 #22994687 未加载
jlgaddisabout 5 years ago
Just this morning I realized I had a need for a decent SSH client for iOS, although I don&#x27;t need something that includes vim, clang, and Lua, Python, and C, though.<p>That&#x27;s extreme overkill for my needs -- I&#x27;d just like the ability to log in to a few hosts (preferably using public key authentication!) and run various commands just like I normally do in a terminal.<p>If anyone has any &quot;favorites&quot; they recommend, I&#x27;d be interested in hearing about them. I&#x27;d prefer something open-source (out of principle) but I&#x27;m certainly not opposed to paying a reasonable amount.
评论 #22990582 未加载
评论 #22990583 未加载
评论 #22991078 未加载
评论 #22993504 未加载
评论 #22991433 未加载
评论 #22990692 未加载
ceocoderabout 5 years ago
This is very cool, over the years I&#x27;ve been using different apps - iSSH back in 2010&#x2F;2011 and Terminus lately - to connect to servers over ssh&#x2F;mosh but having a local working terminal would be great. Is there any way this can update Apple Notes?<p>And<p>&gt; &quot;A text-based user interface for a screen-based platform&quot;<p>Is that a play on &quot;Limitless paper in paperless world&quot; from a Dunder-Mifflin ad?[0]<p>[0] <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=FIUSPM7xjAk" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=FIUSPM7xjAk</a>
misrababout 5 years ago
I&#x27;m seeing more and more dev tools being developed for mobile<p>e.g. yesterday on HN: <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=22968079" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=22968079</a><p>Seems like there&#x27;s pent up demand for more hacker stuff on mobile! :) I wonder what this could mean for the direction of the mobile paradigm (move towards fewer walled gardens like app stores please?)
kgartenabout 5 years ago
I personally love Blink <a href="https:&#x2F;&#x2F;blink.sh&#x2F;" rel="nofollow">https:&#x2F;&#x2F;blink.sh&#x2F;</a> it provides a great mosh client.
评论 #22991872 未加载
评论 #22991904 未加载
评论 #22992429 未加载
RodgerTheGreatabout 5 years ago
I can see that this tool in turn leverages ios_system, but neither A-shell nor the ios_system github repository appear to present an exhaustive list of the available commands. This seems like an obvious first step in improving documentation.
评论 #22990411 未加载
评论 #22992132 未加载
评论 #22990340 未加载
GekkePrutserabout 5 years ago
Nice!!!<p>What iOS really needs to make this useful though is a way to project to a proper screen and keyboard&#x2F;mouse configuration. Like Samsung DeX. Kinda hoping this will happen as they are making the iPad Pros more like a computer.
评论 #22990684 未加载
airstrikeabout 5 years ago
Link to git repo <a href="https:&#x2F;&#x2F;github.com&#x2F;holzschu&#x2F;a-shell" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;holzschu&#x2F;a-shell</a>
haddrabout 5 years ago
iSH is another good alternative, with alpine Linux and possibility to install packages. Still in beta though
noodlesUKabout 5 years ago
How does this compare to ish? I know ish translates x86 into ARM on iOS. How does this work?
评论 #22991213 未加载
letmelurkaroundabout 5 years ago
This is a great tool.<p>Love it