Skip to content

iOS support #1694

Open
Open

Description

@A-tA-v

I often used iPad to access remote servers in my organization.
However, since recently they have been equipped with step CA authentication software making it impossible to login from iPad.
Could you please add support for iOS terminals such like A-shell or Blink shell?

Activity

  1. changed the title [-]iOS supprt[/-] [+]iOS support[/+] on Aug 30, 2026
  2. holzschu commented on Aug 30, 2026

    @holzschu

    Hi,
    I'm the maintainer of a-Shell, a local terminal for iOS. I can provide more explanation; the short version is: it would be great if step could be compiled to WebAssembly (wasm32-wasip1, preferably).

    The long version:

    • there is no fork()/exec() mechanism on iOS (for system security reasons),
    • in order to run a local terminal, we simulate fork/exec with threads,
    • it works great most of the time, but that means the commands have to clean up their own memory and re-initialize their data themselves (with exec(), when the command exits, anything it allocated is automatically released. No such thing with threads),
    • that works well with programs written in C, but programs written in golang do not have a mechanism for actually releasing memory and re-initializing it,
    • the easiest solution for programs written in golang is to compile them to WebAssembly; we have several WebAssembly interpreters, and they offer access to the local filesystem (for configuration files and certificates),
    • offering a binary release of step compiled to WebAssembly (or instructions on how to make one) would also vastly extend the number of platforms supported.

    I'm linking to the parallel issue that was opened in a-Shell for future references: holzschu/a-shell#1053

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementneeds triageWaiting for discussion / prioritization by team

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions