holzschu / a-shell

A terminal for iOS, with multiple windows
BSD 3-Clause "New" or "Revised" License
2.74k stars 117 forks source link

[Question] Any File Manager? #540

Open xube opened 1 year ago

xube commented 1 year ago

Hi @holzschu,

Big thank for a-shell. Really great way to use terminal/shell on iOS. I used to work with ish, which is great too but very slow (vritualisation) on my iPad. So i tried a-shell and was impressed by performance. But it is rather limited because of pkg does not include many commands…

I am interested in any terminal file manager.

I tried python file manager ranger written in Python. It was the easiest to try - installed by pip as ranger-fm package. But there is a MemoryError. I am not programmer so i did not investigated it further. It is pitty because it can be used as plugin in vim as well.

To the point. I am more interested in Midnight Commander that is written in C. Is there any way to use it within a-shell? I know i can compile it from source with a-shell (which i am not sure i can do - not programmer). Also i use a-shell mini for now which does not include make for c.

So here is question. Do you have any plans to include MC in your pkg? Is there any plans make some “public repositories” for pkg command? Or is there a way how to compile mc within a-shell? Maybe any tips for file manager?

Thanks

holzschu commented 1 year ago

Hi, thanks for the kind words and the suggestion. The reason commands are faster in a-Shell than in iSh is also the reason why there are so few commands available: each command is compiled to either Arm64 binary (native commands) or to WebAssembly (wasm commands). Since these are non-standard platforms, most automatic build scripts tend to have issues, which are fixed by editing the source code. Native commands have to be distributed with the app (due to system restrictions), only WebAssembly commands can be installed at will.

I see the issue with ranger: it depends on the _curses python module, which isn't installed (because it isn't working for the time being).

Midnight Commander is covered by the GPL, which means it cannot be distributed with the app. So it would have to be compiled to WebAssembly. But WebAssembly is a limited platform, and I don't know whether it has enough to run mc. For the time being, I think iSh is the best for file managers.