Nautilus has the possibility to add something via an extension - luckily these extensions can be in Python too.
So it was pretty straight forward to add to Nautilus:
- sharing one or more folders as a DLNA/UPnP MediaServer, allowing clients like the PS3 or the Nokia N810 to access these files
- accepting files send from an ControlPoint
- uploading files itself to other DLNA/UPnP MediaServers that allow media to be imported
- instruct a MediaRenderer to playback a given file
More details, download and install instructions as usual on the Coherence site.
As you might notice, there is one part missing - having Nautilus display and access the content of other MediaServers in the network.
This can’t be done with an extension, here the gvfs backend needs to be modified. But as Coherence exposes the MediaServers via DBus, a small layer mapping Nautilus’ requests to Coherence’ signals and methods shouldn’t be that difficult?