Skip to content

iOS

Even though it’s not officially supported, it is possible to debug iOS apps from an Ubuntu machine using iOS WebKit Debug Proxy.

RemoteDebug iOS WebKit Adapter

Follow further instructions from the iOS WebKit Debug Proxy README.

Instead of running sudo make install, it is recommended to use CheckInstall. This will install the package as if it is a nice Debian package.

Terminal window
sudo apt-get install checkinstall
sudo checkinstall

You will be prompted to set some metadata. Since you just install the deb on your own system, feel free to enter whatever metadata you want.

Next install RemoteDebug iOS WebKit Adapter using npm.

Terminal window
npm install -g remotedebug-ios-webkit-adapter

OSX + SSHFS + AutoFS

::note

This requires an SSH setup for the root user. There may be a better way. :::

On the client, install the required dependencies.

Terminal window
sudo apt-get install autofs sshfs

Enable passwordless login for root on the OSX machine.

Terminal window
# ssh-keygen -t rsa
# ssh-copy-id <OSX USER>@<OSX HOST>

Add an SSH configuration for the root user to reduce latency. Add the following to /root/.ssh/config:

Host <OSX HOST>
User <OSX USER>
Compression no

Add the following line to /etc/auto.master{.interpreted-text role=“file”}:

/media/sshfs /etc/auto.sshfs uid=1000,gid=1000,--timeout=30,--ghost

And add the following line to /etc/auto.sshfs. \<DESIRED DIR NAME\>is the name of the folder that the remote directory will be mounted at in /media/sshfs. For stability reasons it is advised to create the folder manually in addition to specifying it in this file:

<DESIRED DIR NAME> -fstype=fuse,rw,nodev,nonempty,noatime,allow_other,max_read=65536 :sshfs\#<OSX USER>@<OSX HOST>\:

Note that the weird characters are intended. For example:

bigmac -fstype=fuse,rw,nodev,nonempty,noatime,allow_other,max_read=65536 :sshfs\#developer@bigmac.lan\:
macmini -fstype=fuse,rw,nodev,nonempty,noatime,allow_other,max_read=65536 :sshfs\#developer@macmini.lan\:

And now run the one command to apply it all:

Terminal window
sudo systemctl restart autofs.service

You can now simply open the mounted remote directories from /media/sshfs. These should also show up as volumes in graphical file managers.