PROBLEM: My workflow involves consulting notes stored in Zotero 5.0.22 while writing in other software (Scrivener, LibreOffice Writer). On Windows 10, I am able to access these notes from those other software by creating hyperlinks to them using their zotero://select item ID: I click on the hyperlink in, say LibreOffice Writer, and Zotero opens and selects the note item in my library. However, I cannot get these hyperlinks to work under Ubuntu 16.04: clicking on them--whether in Scrivener or LibreOffice Writer--produces absolutely no result.

REQUEST: A search through forums and posts on the web suggests that the problem is possibly due to Ubuntu not recognising the zotero:// protocol and therefore not knowing what to do when I click on the hyperlinks. Is this correct? If so, how do I solve the problem? Various posts say I have to register the protocol with the operating system. I have no knowledge of programming, and the how-to's I found were too complicated for me. If non-recognition of the protocol is not the problem, then what is it? I would appreciate any help on this problem, if possible a simple how-to that does not involve complex code-writing.

APPRECIATION: To the great people behind Ubuntu, thank you so much for the marvelous operating system; and to the Ubuntu community, thanks for the great work addressing problems faced by programming-incompetents like me.

Thank you for your help.

  • Thanks for your responses. Zotero (not Zotoro) is a reference management software. In addition to the reference data, it stores attachments such as PDFs and notes to each entry. The word-processor plugin I need is installed and functions well. That is not the issue; it is rather that hyperlinks in external software to those reference items, attachments, and notes do not function. I am using Zotero standalone (5.0.22). Thanks for your help.
    – Osaze
    Oct 12 '17 at 15:56
  • Could you give an example of a zotero:// URL? Aug 8 '19 at 20:30

Running into the same issue on Ubuntu 18.04, I just wanted to post the solution that worked for me.

The zotero.desktop file that is installed with the current version of Zotero is correct. The only thing that is missing is the entry in the mimeapps.list. Thus, all you have to do is follow the final bit of @pim's answer:

Then edit the file ~/.config/mimeapps.list, section [Default Applications], adding this line :


Now you can test it (even without re-login) using xdg-open zotero://abcdef.

(I corrected the file name)

  • It seems you are right. I was able to open Zotero from an external hyperlink after editing the mimeapps.list file as recommended. However, this only opened Zotero but did not select the target item. That was fixed after adding "--url %u" (without the quotation marks) to the Exec line in the zotero-desktop file. Thanks to you for your contribution, and to pim for his initial help.
    – Osaze
    Dec 8 '18 at 13:53

As of 2019, the preferred way of installing Zotero is by using Emiliano Heyns' packages.

Run the following instructions on your terminal:

wget -qO- https://github.com/retorquere/zotero-deb/releases/download/apt-get/install.sh | sudo bash
sudo apt update
sudo apt install zotero

These packages manage both desktop file and MimeType registration.

For additional information about the provided packages, see the README file.

Other answers should be considered obsolete, Sebastiaan Mathot's packages being no longer maintained.


I have no idea what zotero is, but I have setup some custom handlers working in my desktop.

Create a file named zotero-link.desktop in ~/.local/share/applications (or in /usr/share/applications/zotero.desktop if you want the url handler for all users in the system), with the following content :

[Desktop Entry]
Name=My custom zotero handler
Comment=Opens zotero
Exec=zotero %f

Then edit the file ~/.config/mimeapps.list, section [Default Applications], adding this line :


Now you can test it (even without re-login) using xdg-open zotero://abcdef.

  • Thanks for the quick answer to my question. Unfortunately, though, it does not seem to work. I created the file "zotero.desktop" in ".local/share/applications" (actually, there was already a file by that name in that folder)
    – Osaze
    Oct 12 '17 at 14:38
  • Thanks for the quick answer to my question. Unfortunately, though, it does not seem to work. I created the file "zotero.desktop" in ".local/share/applications" (actually, there was already a file by that name there: I renamed it and created the new one by that name, with the contents provided). After rebooting to Ubuntu, I found the zotero icon had been replaced by a "?" icon. Although Zotero loaded and ran normally, a hyperlink to a library item still did not work--no results at all, despite several clicks on the hyperlink. Perhaps I got something wrong? Thanks for your kind help.
    – Osaze
    Oct 12 '17 at 14:47
  • Apologies. In my frustration with the seeming impenetrability of the problem, I failed to follow your instructions faithfully: first, I mistakenly named the file I created zotero.desktop, instead of zotero-link.desktop as instructed (thus replacing the original zotero-desktop file); second, I did not edit the ~/.config/mimeapps.list as required. When I finally noticed these slips and corrected them, your solution did work--although only partly. I am very grateful for your help and ask that you (or anyone else who can) kindly indulge me further.
    – Osaze
    Oct 13 '17 at 19:11
  • Using your solution, I was able to open Zotero from an external software (Scrivener); however, the desired library item was not selected--which is actually what I require in the final analysis. After many re-tries (including cold-rebooting my computer several times, on the chance that the OS somehow was not yet reading the file), I did further explorations and found this useful post at: forums.zotero.org/discussion/8306. I gave it a try by amending my original zotero.desktop file (of which I had made a copy before replacing as mentioned above) as instructed. My original file is below:
    – Osaze
    Oct 13 '17 at 19:11
  • [Desktop Entry] Encoding=UTF-8 Version=1.0 Type=Application Name=Zotero Icon=zotero.png Path=/home/osaze/Zotero_linux-x86_64 Exec=/home/osaze/Zotero_linux-x86_64/zotero-bin -app /home/osaze/Zotero_linux-x86_64/application.ini StartupNotify=false StartupWMClass=Zotero OnlyShowIn=Unity; X-UnityGenerated=true The amended file is below: [Desktop Entry] Encoding=UTF-8 Version=1.0 Type=Application Name=Zotero Icon=zotero.png Exec=/opt/zotero/zotero --url %u StartupNotify=false StartupWMClass=Zotero OnlyShowIn=Unity; X-UnityGenerated=true MimeType=x-scheme-handler/zotero;
    – Osaze
    Oct 13 '17 at 19:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.