It should be easy, and it is, but first a few hoops:
Using in build in 'vino'
- On Ubuntu install vino: sudo apt-get install -y vino
- Use 'Settings' app (top right via preferences, or apps, select Sharing
- Switch on at the top, and desktop sharing
- Set a password
- Ensure selected:
- "Allow other users to view your desktop"
- "Allow other users to control your desktop"
- Ensure NOT selected: "You must confirm each access to the this machine"
- Disable encryption on Ubuntu: gsettings set org.gnome.Vino require-encryption false
- Restart Ubuntu and log into it locally (Vino doesn't start until user logged in)
Vino is ok, but having to login first on the actual machine, and screen resolution pushed me to find another method: using VNC
- Install vnc: sudo apt update && sudo apt install -y xfce4 xfce4-goodies
- sudo apt install tightvncserver
- Setup default password: vncserver
- enter password
- Reconfigure vnc display:
- vncserver -kill :1
- copy config: mv ~/.vnc/xstartup ~/.vnc/xstartup.bak
- create startup script: vi ~/.vnc/xstartup
- Enter startup script:
- Change to executable: sudo chmod +x ~/.vnc/xstartup
- Now connect...
- Get Ubuntu ip address: apt-get install -y net-tools && ifconfig -a
- Connect using Screen Sharing app on Mac and ip address of Ubuntu machine