# Installation requires nonexistent emacsql-sqlite3-1.0.0

**URL:** <https://org-roam.discourse.group/t/installation-requires-nonexistent-emacsql-sqlite3-1-0-0/459>\
**Category:** Troubleshooting\
**Created:** [June 30, 2020, 5:29pm UTC](https://org-roam.discourse.group/t/installation-requires-nonexistent-emacsql-sqlite3-1-0-0/459 "2020-06-30T17:29:48Z")\
**Posts on this page:** 10\
**Page:** 1

<div class="post-metadata">

**Author:** ![das](https://avatars.discourse-cdn.com/v4/letter/d/46a35a/32.png) [@das](https://org-roam.discourse.group/u/das)\
**Post date:** [June 30, 2020, 5:29pm UTC](https://org-roam.discourse.group/t/installation-requires-nonexistent-emacsql-sqlite3-1-0-0/459/1 "2020-06-30T17:29:48Z")

</div>

Trying to install org-roam on a newly compiled emacs 26.3 with a minimal init.el under Ubuntu 18.04. Stable melpa is up and running, sqlite3 is on the load-path. When I try to install org-mode, it complains that no emacsql-sqlite3-1.0.0 can be found. Melpa doesn’t know of a emacsql-sqlite3-1.0.0, and installing emacsql-sqlite3 doesn’t satisfy the org-roam installation. Is it me, the current emacs version, or the install package?

---

<div class="post-metadata">

**Author:** ![das](https://avatars.discourse-cdn.com/v4/letter/d/46a35a/32.png) [@das](https://org-roam.discourse.group/u/das)\
**Post date:** [June 30, 2020, 7:44pm UTC](https://org-roam.discourse.group/t/installation-requires-nonexistent-emacsql-sqlite3-1-0-0/459/2 "2020-06-30T19:44:58Z")

</div>

And have since found the Troubleshooting article, and following its steps org-roam installed and showed no interest in the non-existent emacsql-sqlite3-1.0.0. My “minimal init.el” was indeed minimal, so I may play some to try to find what was the problem, or I may just move on, ego properly diminished.

---

<div class="post-metadata">

**Author:** ![nobiot](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/nobiot/32/159_2.png) [@nobiot](https://org-roam.discourse.group/u/nobiot)\
**Post date:** [June 30, 2020, 8:02pm UTC](https://org-roam.discourse.group/t/installation-requires-nonexistent-emacsql-sqlite3-1-0-0/459/3 "2020-06-30T20:02:40Z")

</div>

Would you like to try [MELPA](https://melpa.org/#/?q=emacsql), instead of MELPA Stable?

---

<div class="post-metadata">

**Author:** ![das](https://avatars.discourse-cdn.com/v4/letter/d/46a35a/32.png) [@das](https://org-roam.discourse.group/u/das)\
**Post date:** [July 1, 2020, 4:02am UTC](https://org-roam.discourse.group/t/installation-requires-nonexistent-emacsql-sqlite3-1-0-0/459/4 "2020-07-01T04:02:59Z")

</div>

Thanks - with an even leaner init.el I was able to install (and the emacsql-sqlite3 is emacsql-sqlite3-20200628.250. I have no idea where the 1.0.0 came from. I’m still getting some weird results as I try to bring org-roam up. It’s initializing just fine, creating the database in my org-roam folder, and when I try to create a new file I get a “symbol function is void” error: “Capture template ‘d’: Symbol’s function definition is void: org-show-all. Please adjust ‘org-roam-capture-templates’”

Curiouser and curiouser. I’ll keep at it, short of fiddling with the org-mode code…

Thanks again.

---

<div class="post-metadata">

**Author:** ![nobiot](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/nobiot/32/159_2.png) [@nobiot](https://org-roam.discourse.group/u/nobiot)\
**Post date:** [July 1, 2020, 6:22am UTC](https://org-roam.discourse.group/t/installation-requires-nonexistent-emacsql-sqlite3-1-0-0/459/5 "2020-07-01T06:22:37Z")

</div>

Yes, weird, indeed. Sounds like either Org mode is not loaded before Org-roam, or Org mode needs upgrading…

---

<div class="post-metadata">

**Author:** ![das](https://avatars.discourse-cdn.com/v4/letter/d/46a35a/32.png) [@das](https://org-roam.discourse.group/u/das)\
**Post date:** [July 1, 2020, 11:50am UTC](https://org-roam.discourse.group/t/installation-requires-nonexistent-emacsql-sqlite3-1-0-0/459/6 "2020-07-01T11:50:54Z")

</div>

Thanks so much for your help.

Org was installed by org-roam (I threw away my old configuration and started over) so I assume that it’s version is OK - here’s how org and org-roam are called:

;; configuring org-mode  
(require 'org)  
(global-set-key “\C-cl” 'org-store-link)  
(global-set-key “\C-ca” 'org-agenda)  
(global-set-key “\C-cc” 'org-capture)  
(global-set-key “\C-cb” 'org-switchb)  
;; configuring org-roam  
(add-hook 'after-init-hook 'org-roam-mode)  
(setq org-roam-directory “~/data/org-roam”)  
(global-set-key (kbd “C-c n r”) #'org-roam-buffer-toggle-display)  
(global-set-key (kbd “C-c n i”) #'org-roam-insert)  
(global-set-key (kbd “C-c n /”) #'org-roam-find-file)

---

<div class="post-metadata">

**Author:** ![nobiot](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/nobiot/32/159_2.png) [@nobiot](https://org-roam.discourse.group/u/nobiot)\
**Post date:** [July 1, 2020, 1:39pm UTC](https://org-roam.discourse.group/t/installation-requires-nonexistent-emacsql-sqlite3-1-0-0/459/7 "2020-07-01T13:39:30Z")

</div>

Do you happen to have an old hang-over “customize.el” or something automatically generated by Emacs customization somewhere in your HOME or `.emacs.d`? This might be overriding your `init` file.

This is my Ubuntu Emacs config (`init.el`) in its entirety. I just upgraded packages from MELPA (on July 1st 2020). Note the `custom-set-variables` part. Perhaps you have a separate file (like `.emacs` directly in your HOME?) that contains custom variables with some config in it.

 ![image](https://global.discourse-cdn.com/free1/uploads/orgroam/original/1X/a2cba7f3a6961ec7157fb4eb51d877aae5a85263.png)

You can see my Org-roam is working (only sample notes).

 ![image](https://global.discourse-cdn.com/free1/uploads/orgroam/original/1X/019e162cde81c0252b22c0c22e2471894fd15d91.png)

`org-roam-capture` starts without an error

 ![image](https://global.discourse-cdn.com/free1/uploads/orgroam/original/1X/6c5778c9058f5600e9b82054b0d9ef754476dc79.png)

---

<div class="post-metadata">

**Author:** ![das](https://avatars.discourse-cdn.com/v4/letter/d/46a35a/32.png) [@das](https://org-roam.discourse.group/u/das)\
**Post date:** [July 1, 2020, 2:24pm UTC](https://org-roam.discourse.group/t/installation-requires-nonexistent-emacsql-sqlite3-1-0-0/459/8 "2020-07-01T14:24:46Z")

</div>

Thanks again for helping so much - your question about the order of calls was a big help.

I’d tried installing back in February (before it was available on Melba) with no luck - no patience was probably more like it. This time after trying to stick it into my old init.el, I added a new user “roam” and, following the hints in the Troubleshooting article, created an ultra-minimal init.el that installed org-roam and loaded it OK. Copying that over, I added other configurations (suppressing splash, menus, scrolls, toolbars, adding org-journal and typopunct to give me “smart typography” in markdown mode.

# This is what I ended up with that all seems to work. I might someday try to determine what the general rules are for structuring an init.el for org-roam - if I were a product manager that would be on the list for somebody (assuming that other people have problems installing org-roam successfully - I might be the only one). For now, everything I need to work on my writing plus org-roam seems to be working so I’ll get on with things. The following is the working init.el that I have (GNU EMACS 26.3 built two days ago on Ubuntu 18.04):

;; 20200701  
(add-to-list 'load-path “~/.emacs.d/lisp”)  
(add-to-list 'exec-path “/usr/bin/sqlite3”)  
(add-hook 'after-init-hook 'org-roam-mode)  
(setq org-roam-directory “~/data/org-roam”)  
;; configure visual interface  
(menu-bar-mode -1)  
(tool-bar-mode -1)  
(scroll-bar-mode -1)  
(setq inhibit-startup-message t  
inhibit-startup-echo-area-message t)  
(fset 'yes-or-no-p 'y-or-n-p)  
(setq confirm-nonexistent-file-or-buffer nil)  
;; configuring package  
(require 'package)  
(add-to-list 'package-archives  
'(“melpa-stable” . “[https://stable.melpa.org/packages/](https://stable.melpa.org/packages/)”))  
(package-initialize)  
;; configuring org-mode  
(add-to-list 'package-archives  
'(“org” . “[https://orgmode.org/elpa/](https://orgmode.org/elpa/)”) t)  
(require 'org)  
(global-set-key “\C-cl” 'org-store-link)  
(global-set-key “\C-ca” 'org-agenda)  
(global-set-key “\C-cc” 'org-capture)  
(global-set-key “\C-cb” 'org-switchb)  
;; Configuring org-journal  
(customize-set-variable 'org-journal-date-prefix “#+TITLE: “)  
(customize-set-variable 'org-journal-file-format “%Y-%m-%[d.org](http://d.org)”)  
(customize-set-variable 'org-journal-dir “~/data/davids/journal/”)  
(customize-set-variable 'org-journal-date-format “%A, %d %B %Y”)  
(global-set-key “\C-cnj” 'org-journal-new-entry)  
;; configuring org-roam  
(add-hook 'after-init-hook 'org-roam-mode)  
(global-set-key (kbd “C-c n r”) #'org-roam-buffer-toggle-display)  
(global-set-key (kbd “C-c n i”) #'org-roam-insert)  
(global-set-key (kbd “C-c n /”) #'org-roam-find-file)  
;; configure typopunct  
(require 'typopunct)  
(typopunct-change-language 'english t)  
(add-hook 'markdown-mode-hook 'my-markdown-init)  
(defun my-markdown-init ()  
(require 'typopunct)  
(typopunct-change-language 'english)  
;; add more superscripts  
(typopunct-mode 1))  
(require 'iso-transl)  
(iso-transl-define-keys  
`((”^0” . ,(vector (decode-char 'ucs #x2070)))  
("^4" . ,(vector (decode-char 'ucs #x2074)))  
("^5" . ,(vector (decode-char 'ucs #x2075)))  
("^6" . ,(vector (decode-char 'ucs #x2076)))  
("^7" . ,(vector (decode-char 'ucs #x2077)))  
("^8" . ,(vector (decode-char 'ucs #x2078)))  
("^9" . ,(vector (decode-char 'ucs #x2079)))  
("^+" . ,(vector (decode-char 'ucs #x207A)))  
("^-" . ,(vector (decode-char 'ucs #x207B)))  
("^=" . ,(vector (decode-char 'ucs #x207C)))  
("^(" . ,(vector (decode-char 'ucs #x207D)))  
("^)" . ,(vector (decode-char 'ucs #x207E)))  
("\_0" . ,(vector (decode-char 'ucs #x2080)))  
("\_1" . ,(vector (decode-char 'ucs #x2081)))  
("\_2" . ,(vector (decode-char 'ucs #x2082)))  
("\_3" . ,(vector (decode-char 'ucs #x2083)))  
("\_4" . ,(vector (decode-char 'ucs #x2084)))  
(“_5" . ,(vector (decode-char 'ucs #x2085)))  
(“6" . ,(vector (decode-char 'ucs #x2086)))  
(“7" . ,(vector (decode-char 'ucs #x2087)))  
(“8" . ,(vector (decode-char 'ucs #x2088)))  
(“9" . ,(vector (decode-char 'ucs #x2089)))  
("+” . ,(vector (decode-char 'ucs #x208A)))  
("-” . ,(vector (decode-char 'ucs #x208B)))  
("=” . ,(vector (decode-char 'ucs #x208C)))  
("(” . ,(vector (decode-char 'ucs #x208D)))  
("_)” . ,(vector (decode-char 'ucs #x208E)))))

;; more stuff

(custom-set-variables  
;; custom-set-variables was added by Custom.  
;; If you edit it by hand, you could mess it up, so be careful.  
;; Your init file should contain only one such instance.  
;; If there is more than one, they won’t work right.  
'(package-selected-packages (quote (emacsql-sqlite org-roam markdown-mode))))  
(custom-set-faces  
;; custom-set-faces was added by Custom.  
;; If you edit it by hand, you could mess it up, so be careful.  
;; Your init file should contain only one such instance.  
;; If there is more than one, they won’t work right.  
)

---

<div class="post-metadata">

**Author:** ![nobiot](https://yyz2.discourse-cdn.com/free1/user_avatar/org-roam.discourse.group/nobiot/32/159_2.png) [@nobiot](https://org-roam.discourse.group/u/nobiot)\
**Post date:** [July 1, 2020, 4:32pm UTC](https://org-roam.discourse.group/t/installation-requires-nonexistent-emacsql-sqlite3-1-0-0/459/9 "2020-07-01T16:32:16Z")

</div>

Happy that you got it all working. Congrats!

I could not help but notice that in your config:

- `(add-hook 'after-init-hook 'org-roam-mode)` appears twice  
You might like to remove the one on Line 2 (which one should not really matter, I guess) to avoid confusion for future-self – keeping the one within the `;; configuring org-roam` section seems to make it more human friendly

- You have the following part related to Org-mode; I don’t.  
Judging from your comment that the loading sequence mattered, perhaps this part is related to the error you experienced (pure speculation based on the comparison with mine; I don’t know its intended purpose:

```auto
(add-to-list 'package-archives
   '(“org” . “https://orgmode.org/elpa/”) t)
(require 'org)

```

You can disregard what I am saying here. The main thing is you got it working.  
Cheers to that 🙂

---

<div class="post-metadata">

**Author:** ![das](https://avatars.discourse-cdn.com/v4/letter/d/46a35a/32.png) [@das](https://org-roam.discourse.group/u/das)\
**Post date:** [July 1, 2020, 5:18pm UTC](https://org-roam.discourse.group/t/installation-requires-nonexistent-emacsql-sqlite3-1-0-0/459/10 "2020-07-01T17:18:21Z")

</div>

Thanks for catching that goof - one or the other “add-hook” statement isn’t necessary, for sure.

As for the “add-to-list”, that was added by package after I installed org-mode. I added the first statement (adding melpa-stable) to an empty init.el as my starting place, then did the ‘M-x package-install’ to install org-roam. I’ll leave them both in place for now - and consider commenting the second out if things start to go haywire.

Thanks again for all your help - I’m delighted to have it working now.
