From: ludo@gnu.org (Ludovic Courtès)
To: Oleg Pykhalov <go.wigust@gmail.com>
Cc: 30884@debbugs.gnu.org
Subject: [bug#30884] [PATCH 4/6] gnu: Add emacs-emacsql.
Date: Wed, 04 Apr 2018 14:37:24 +0200 [thread overview]
Message-ID: <87woxnb117.fsf@gnu.org> (raw)
In-Reply-To: <20180320163310.11955-4-go.wigust@gmail.com> (Oleg Pykhalov's message of "Tue, 20 Mar 2018 19:33:08 +0300")
Oleg Pykhalov <go.wigust@gmail.com> skribis:
> * gnu/packages/emacs.scm (emacs-emacsql): New public variable.
[...]
> + (add-after 'patch-elisp-shell-shebangs 'setenv-emacsloadpath
> + (lambda* (#:key inputs #:allow-other-keys)
> + (define (el-dir store-dir)
> + (match (find-files store-dir "\\.el$")
> + ((f1 f2 ...) (dirname f1))
> + (_ "")))
> + (define emacs-prefix? (cut string-prefix? "emacs-" <>))
> + (let* ((emacs-load-paths
> + (map (match-lambda
> + (((? emacs-prefix? name) . dir)
> + (string-append (el-dir dir) ":"))
> + (_ ""))
> + inputs))
> + (emacs-load-path-value
> + (string-concatenate emacs-load-paths)))
> + (format #t "environment variable `EMACSLOADPATH' set to ~a\n"
> + emacs-load-path-value)
> + (setenv "EMACSLOADPATH" emacs-load-path-value))
Now that there’s a new ‘set-emacs-load-path’, I suspect this phase can
be removed. Can you confirm, Maxim?
> + (add-after 'build-emacsql-sqlite 'install-emacsql-sqlite
> + (lambda* (#:key outputs #:allow-other-keys)
> + (install-file "sqlite/emacsql-sqlite"
> + (string-append (assoc-ref outputs "out")
> + "/bin"))
> + #t))
> + (add-after 'install-emacsql-sqlite 'patch-emacsql-sqlite.el
> + (lambda* (#:key outputs #:allow-other-keys)
> + (let ((file "emacsql-sqlite.el"))
> + (chmod file #o644)
> + (emacs-substitute-sexps file
> + ("(defvar emacsql-sqlite-user-prompted" 't)
> + ("(executable-find" (which "gcc"))
> + ("(defvar emacsql-sqlite-executable"
> + (string-append (assoc-ref outputs "out")
> + "/bin/emacsql-sqlite"))))))
Please add short comments explaining what’s going on in these phases.
> + (home-page "https://github.com/skeeto/emacsql")
> + (synopsis "Emacs high-level SQL database front-end")
> + (description "EmacSQL provides a high-level Emacs Lisp front-end for
> +SQLite (primarily), PostgreSQL, MySQL, and potentially other SQL databases.")
I would add this, taken from their README:
Any readable Lisp value can be stored as a value in EmacSQL, including
numbers, strings, symbols, lists, vectors, and closures. EmacSQL has
no concept of @code{TEXT} values; it's all just Lisp objects. The Lisp
object @code{nil} corresponds 1:1 with @code{NULL} in the database.
Otherwise LGTM, thanks!
Ludo’.
next prev parent reply other threads:[~2018-04-04 12:38 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-03-20 16:29 [bug#30884] [PATCH 0/6] gnu: Add emacs-epkg Oleg Pykhalov
2018-03-20 16:33 ` [bug#30884] [PATCH 1/6] gnu: Add emacs-pg Oleg Pykhalov
2018-03-20 16:33 ` [bug#30884] [PATCH 2/6] gnu: Add emacs-cl-generic Oleg Pykhalov
2018-04-04 12:32 ` Ludovic Courtès
2018-03-20 16:33 ` [bug#30884] [PATCH 3/6] gnu: Add emacs-finalize Oleg Pykhalov
2018-04-04 12:33 ` Ludovic Courtès
2018-03-20 16:33 ` [bug#30884] [PATCH 4/6] gnu: Add emacs-emacsql Oleg Pykhalov
2018-04-04 12:37 ` Ludovic Courtès [this message]
2018-03-20 16:33 ` [bug#30884] [PATCH 5/6] gnu: Add emacs-closql Oleg Pykhalov
2018-04-04 12:38 ` Ludovic Courtès
2018-03-20 16:33 ` [bug#30884] [PATCH 6/6] gnu: Add emacs-epkg Oleg Pykhalov
2018-04-04 12:39 ` Ludovic Courtès
2018-04-04 12:32 ` [bug#30884] [PATCH 1/6] gnu: Add emacs-pg Ludovic Courtès
2018-03-20 16:43 ` [bug#30884] guix lint produces warnings Oleg Pykhalov
2018-04-14 17:50 ` [bug#30884] Status: [PATCH 0/6] gnu: Add emacs-epkg Oleg Pykhalov
2018-04-16 14:08 ` bug#30884: " Oleg Pykhalov
2018-04-19 1:09 ` [bug#30884] " Maxim Cournoyer
2018-04-19 2:07 ` Maxim Cournoyer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87woxnb117.fsf@gnu.org \
--to=ludo@gnu.org \
--cc=30884@debbugs.gnu.org \
--cc=go.wigust@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.