This weekend I was in Brno at Red Hat Developer Conference, attending Fedora's KDE SIG meeting. Besides helping these super-awesome folks getting KDE Telepathy into Fedora, I had this idea of storing the download URL of a file that you have downloaded, so you can check where you downloaded the file from. KDE Workspace already provides all that is needed to make this work. Yes, of course it's Nepomuk :)
So I pinged Vishesh Handa about this idea and we got down writing the missing bits. The idea was to simply monitor the browser downloads and add the download url to Nepomuk once the download is completed. I had no prior experience with browser plugins/extensions, but initial research showed that the best way would be to write a NPAPI plugin, which is supposed to run in all browsers, that would mean one code to maintain. However that proved rather difficult (please let me know if you have experience with this and if you think it would be better way to write) so I went the way of less resistance and I wrote Firefox extension, which is based on Plasma-notify extension. While in the process, I made the Plasma-notify work with latest Firefox too ;) Edit: This is apparently not needed anymore, in "about:config", you can set "browser.download.manager.showAlertOnComplete" to true. Thank 'theghost' for the tip.
Anyway I finished the extension while Vishesh wrote the Nepomuk part in the meantime. We decided to do this in two parts, so that the Nepomuk utility can be reused by anyone/anything else. The extension just calls the binary utility, which takes file and URL as parameters and adds the URL as ndo:copiedFrom into Nepomuk. You can then view the download URL in Dolphin's sidebar.
Without any more prolongs - here is Firemuk -- http://dl.dropbox.com/u/6761102/firemuk.xpi
Keep in mind it's version 0.1 ;) There seems to be problems with regular downloads sometime, I have no idea why. At least not yet. I plan to publish it on addons.mozilla.org once it's more tested. And for you Chrome/Chromium users - yes, I will write the extension for you too. Just hold on :) And as for Konq/Rekonq - it should be super-easy to implement this in these browsers (if the devs could contact me or Vishesh, we'd be more than happy to help). I can see this also working in KGet. KGet already does exactly this. Awesome.
Go ahead and test it and let me know how does it work for you :)