IOS – Multiple users developing for iOS simultaneously on a Mac using RealVNC

desktopdevelopmentiosmac

We are a small team of developers and we would like to use MacBook Pro to develop for iOS.

Is is possible for several users to log in remotely to the Mac using RealVNC and to work in multiple accounts simultaneously?

Setup:

  • We have two Windows machines in different geographical locations

  • One single MacBook Pro where one user works locally

What we did:

  • We installed RealVNC server on the Mac

What is the problem:

  • When someone logs into RealVNC remotely he ends up in the same account as the local user.

Best Answer

Simple solutions

Virtual Machines

You can create OS X virtual machines and connect to them instead of the main session. Apps that can do this are for example: VMware, Virtualbox etc.

VPN clients spawning sessions

I do not know about Windows, but on OS X when you connect via Screen Sharing.app there is a possibility to create new session remotely. Maybe someone from the "Windows world" knows about that kind of software and can share knowledge about it.

Advanced solution

If You have a remote access app, which is able to connect also to the login window (the place where you choose the user and provide the password) - you can use a little hack:

Run the process with those lines (can be done via SSH):

CGSSessionID outSession = 1;
CGSCreateLoginSessionWithDataAndVisibility(&outSession, NULL, false);

This has to be compiled to the executable - it's written using C language and private API (more info on stackoverflow).

This will create separate GUI session in the background - then connect to the server running on the login window and connect to this "new" session.

NOTE:

  • The easiest way is to use VirtualMachines.
  • One of the app, that I know which can log into login window is NoMachine ( I was a developer of this app couple years ago and multiple sessions on OS X were possible, but that was proof of concept. Maybe this works out of the box right now).
  • I do not know if this CGSCreateLoginSessionWithDataAndVisibility hack still works in the newest OS X (I made this on Yosemite). And You will have to have some knowledge about programming and GUI sessions on OS X in order to use it properly. There could also be a problem with "disappearing" session (fun to experiment with this, though).