Python/C++/Objective-C native: File manager integration: Windows Explorer, Finder, Nautilus, Nemo #27
Comments
There's old code for Nautilus/Nemo here (based on Dropbox Nautilus plugin): Original Dropbox Nautilus plugin here: For Windows Explorer here: |
ownCloud has been working on this too. There might a a way to reuse their code. In fact, it might be great to share code between ownCloud, Sparkleshare and Syncany on this: See |
ownCloud dev here. We are basically using a modified version of the liferay nativity plugin which uses a (local) socket API to communicate with our app. Code sharing depends a lot on how your apps retrieve the status. I dont think there a lot of value in sharing code, except for Windows maybe, where overay icons are a scarce resource. |
@danimo
From a code search (also: that) and the Mirall wiki page, I see that all plugins (Mac/Linux/Windows) use the same text-based protocol to communicate with Mirall. I suppose that this protocoll is originated in the Liferay Nativity plugin. In terms of the code sharing mentioned on Twitter, I believe that it's definitely a good idea to follow the same protocol, so we can (in the future) reuse a potentially packaged Nativity and/or Mac library. The Nemo/Nautilus plugin is definitely not really worth sharing. @dejuknow (Liferay Nativity) and @hbons (Sparkleshare): |
Almost right, except the text protocol (and the idea to use sockets) was invented by us. Also, Windows and Mac code is mostly our invention these days, with quite some skeleton code left from liferay, and some concepts (e.g. the multi-handler registration on Windows) taken from tortoise. |
For Syncany, that means:
|
Liferay Nativity developer here. I haven't been actively developing Nativity (other than a few bug fixes) as it's been functional for our own purposes. Ideas (and contributions!) on making the project more integratable for other consumers would be greatly appreciated. |
Also, OS X 10.10 now provides the FinderSync framework for adding badges and context menus via an API, obviating the need for hacky method swizzling. The current OS X implementation will eventually become obsolete as the Mac user base eventually migrates to Yosemite and above. |
@dejuknow |
hey! i develop SparkleShare. just chipping in here with my perspective. :) it would be great if there was some language agnostic way to access the API. just saw Yosemite will have a native API, which is great, so i can use use that. on Linux/Windows commands that take a list of file paths and badge paths/names would be the only thing i need. i know commands can ugly, but bindings aren't easily created. i know there are services like DBus for cross app communication, but unfortunately these aren't cross-platform. API-wise it would be handy to have the following:
i'm not sure what's already being covered right now... |
Liferay finally packaged their overlay library: |
The little icons for the Windows Explorer, Nautilus and Finder need to be managed by separate native applications communicating with the Syncany daemon.
The liferay-nativity is a good starting point. It offers file manager integration on all platforms, but the code by is nowhere near a nicely integrable.
I'm looking for someone to implement this. Please let me know if you're interested.
The text was updated successfully, but these errors were encountered: