Ensure certificate directory exists
authorMichel Alexandre Salim <michel@michel-slm.name>
Sat, 15 Aug 2020 23:25:23 +0000 (16:25 -0700)
committerMichel Alexandre Salim <michel@michel-slm.name>
Sat, 15 Aug 2020 23:26:35 +0000 (16:26 -0700)
Before choosing a permanent client certificate, Elpher tries to list
existing certificates. This fails if `elpher-certificate-directory` does
not exist, e.g.

```
---- ERROR -----

When attempting to retrieve gemini://alexschroeder.ch/do/comment/2020-08-14_How_to_comment_using_Elpher:
Opening directory: No such file or directory, /home/michel/.emacs.d/elpher-certificates

----------------

Press 'u' to return to the previous page.
```

Fix by creating the directory unless it exists in
`elpher-list-existing-certificates`.

Signed-off-by: Michel Alexandre Salim <michel@michel-slm.name>
elpher.el

index 40e21dc..02fb212 100644 (file)
--- a/elpher.el
+++ b/elpher.el
@@ -804,6 +804,8 @@ base for the installed key and certificate files."
 
 (defun elpher-list-existing-certificates ()
   "Return a list of the persistent certificates in `elpher-certificate-directory'."
+  (unless (file-directory-p elpher-certificate-directory)
+    (make-directory elpher-certificate-directory))
   (mapcar
    (lambda (file)
      (file-name-sans-extension file))