I have a Pixel C plugged to a PC. The device is properly recognized by the kernel:
[ 190.454979] usb 1-1.2.2.4: new high-speed USB device number 9 using ehci-pci
[ 190.550564] usb 1-1.2.2.4: New USB device found, idVendor=18d1, idProduct=5203
[ 190.550574] usb 1-1.2.2.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 190.550579] usb 1-1.2.2.4: Product: Pixel C
[ 190.550583] usb 1-1.2.2.4: Manufacturer: google
[ 190.550588] usb 1-1.2.2.4: SerialNumber: 611900XXXX
First, if adb is started as normal user, I get:
List of devices attached
611900XXXX no permissions
If adb is started as root, I get (and I can shell into it):
List of devices attached
611900XXXX device
I don't have this problem on my Android 6.0.1 Nexus 5X.
Moreover, the Pixel C can appear as a PTP device and the Camera folder opens in nautilus. But I never get a standard folder if I chose MTP (File Transfer) connection. Nothing pops up. Again, I have no problem with a Nexus 5X Android 6.0.1 and I can get MTP even if adb is started as normal user.
The device runs latest Android 6.0.1 build ryu-mxc14g.
Something is different on Pixel C from Nexus.
EDIT 1
I think the problem is in libmtp which has not been updated for the Pixel devices. I see some patches for Nexus (such as 0x18d1 / 0x4ee2) but there is nothing for 0x5203. That's most likely the problem.