Welcome ben,
Maybe delete the cache ‘sudo rm ~/.cache/pip’ and rerun the install?
In my local, user ‘frappe’ has this for permissions -
Frappe@erpnext:~/frappe-bench$ ls -al ~/.cache/
total 16
drwx------ 4 frappe frappe 4096 Jan 6 2017 .
drwxr-xr-x 14 frappe frappe 4096 Oct 22 12:35 ..
-rw-r--r-- 1 frappe frappe 0 Nov 28 2015 motd.legal-displayed
drwx------ 4 frappe frappe 4096 Apr 29 17:59 pip
drwx------ 2 frappe frappe 4096 Jan 6 2017 upstart
frappe@erpnext:~/frappe-bench$ ls -al ~/.cache/pip/
total 20
drwx------ 4 frappe frappe 4096 Apr 29 17:59 .
drwx------ 4 frappe frappe 4096 Jan 6 2017 ..
drwx------ 18 frappe frappe 4096 Oct 12 2016 http
-rw-rw-r-- 1 frappe frappe 69 Apr 29 17:59 selfcheck.json
drwxrwxr-x 41 frappe frappe 4096 Oct 13 20:13 wheels
Another suggestion is to create an user account ‘frappe’ to dedicate to erpnext?