* Add: notmuch-vim @ 2017-01-14 15:08 ng0 2017-01-14 15:08 ` [PATCH 1/2] gnu: Add ruby-mail ng0 2017-01-14 15:08 ` [PATCH 2/2] gnu: Add notmuch-vim ng0 0 siblings, 2 replies; 23+ messages in thread From: ng0 @ 2017-01-14 15:08 UTC (permalink / raw) To: guix-devel [PATCH 1/2] gnu: Add ruby-mail. A gem needed at runtime for notmuch-vim. [PATCH 2/2] gnu: Add notmuch-vim. I'm not sure about the propagation: Without vim-full (ruby enabled), notmuch and ruby-mail this vim plugin will not work. Propagation seems like the way to go here, but I'm open to suggestions. All this build system does is copy some files around. ^ permalink raw reply [flat|nested] 23+ messages in thread
* [PATCH 1/2] gnu: Add ruby-mail. 2017-01-14 15:08 Add: notmuch-vim ng0 @ 2017-01-14 15:08 ` ng0 2017-01-14 16:55 ` Marius Bakke 2017-01-14 15:08 ` [PATCH 2/2] gnu: Add notmuch-vim ng0 1 sibling, 1 reply; 23+ messages in thread From: ng0 @ 2017-01-14 15:08 UTC (permalink / raw) To: guix-devel * gnu/packages/ruby.scm (ruby-mail): New variable. --- gnu/packages/ruby.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 8fb22d006..eae83f1ac 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2014, 2015 David Thompson <davet@gnu.org> ;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015, 2016, 2017 Ben Woodcroft <donttrustben@gmail.com> +;;; Copyright © 2017 ng0 <contact.ng0@cryptolab.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -4198,3 +4199,34 @@ RFC 2617. This enables the use of the digest authentication scheme instead of the more insecure basic authentication scheme.") (home-page "http://github.com/drbrain/net-http-digest_auth") (license license:expat))) + +(define-public ruby-mail + (package + (name "ruby-mail") + (version "2.6.4") + (source + (origin + (method url-fetch) + (uri (rubygems-uri "mail" version)) + (sha256 + (base32 + "0c9vqfy0na9b5096i5i4qvrvhwamjnmajhgqi3kdsdfl8l6agmkp")))) + (build-system ruby-build-system) + (propagated-inputs + `(("ruby-mime-types" ,ruby-mime-types))) + (arguments + ;; Tests require extra gems not included in the Gemfile. + `(#:tests? #f)) + (synopsis "Mail library for Ruby") + (description + "Mail is an internet library for Ruby that is designed to handle email +generation, parsing and sending. The purpose of this library is to provide +a single point of access to handle all email functions, including sending +and receiving emails. All network type actions are done through proxy +methods to @code{Net::SMTP}, @code{Net::POP3} etc. + +Mail has been designed with a very simple object oriented system that +really opens up the email messages you are parsing, if you know what you +are doing, you can fiddle with every last bit of your email directly.") + (home-page "https://github.com/mikel/mail") + (license license:expat))) -- 2.11.0 ^ permalink raw reply related [flat|nested] 23+ messages in thread
* Re: [PATCH 1/2] gnu: Add ruby-mail. 2017-01-14 15:08 ` [PATCH 1/2] gnu: Add ruby-mail ng0 @ 2017-01-14 16:55 ` Marius Bakke 0 siblings, 0 replies; 23+ messages in thread From: Marius Bakke @ 2017-01-14 16:55 UTC (permalink / raw) To: ng0, guix-devel [-- Attachment #1: Type: text/plain, Size: 219 bytes --] ng0 <ng0@libertad.pw> writes: > * gnu/packages/ruby.scm (ruby-mail): New variable. Applied, thanks! I added a note about enabling tests for the next version which only has a single dependency on a different mime gem. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 487 bytes --] ^ permalink raw reply [flat|nested] 23+ messages in thread
* [PATCH 2/2] gnu: Add notmuch-vim. 2017-01-14 15:08 Add: notmuch-vim ng0 2017-01-14 15:08 ` [PATCH 1/2] gnu: Add ruby-mail ng0 @ 2017-01-14 15:08 ` ng0 2017-01-14 16:56 ` Marius Bakke 2017-01-14 17:27 ` Marius Bakke 1 sibling, 2 replies; 23+ messages in thread From: ng0 @ 2017-01-14 15:08 UTC (permalink / raw) To: guix-devel * gnu/packages/mail.scm (notmuch-vim): New variable. --- gnu/packages/mail.scm | 37 ++++++++++++++++++++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 206055751..89aa2444d 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -15,7 +15,7 @@ ;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org> ;;; Copyright © 2016 Alex Kost <alezost@gmail.com> ;;; Copyright © 2016 Troy Sankey <sankeytms@gmail.com> -;;; Copyright © 2016 ng0 <ngillmann@runbox.com> +;;; Copyright © 2016, 2017 ng0 <contact.ng0@cryptolab.net> ;;; Copyright © 2016 Clément Lassieur <clement@lassieur.org> ;;; Copyright © 2016 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2016 John Darrington <jmd@gnu.org> @@ -71,6 +71,7 @@ #:use-module (gnu packages perl) #:use-module (gnu packages python) #:use-module (gnu packages readline) + #:use-module (gnu packages ruby) #:use-module (gnu packages search) #:use-module (gnu packages texinfo) #:use-module (gnu packages compression) @@ -83,6 +84,7 @@ #:use-module (gnu packages screen) #:use-module (gnu packages tls) #:use-module (gnu packages networking) + #:use-module (gnu packages vim) #:use-module (gnu packages web) #:use-module (gnu packages xml) #:use-module (gnu packages xorg) @@ -587,6 +589,39 @@ invoking @command{notifymuch} from the post-new hook.") ing, and tagging large collections of email messages.") (license gpl3+))) +(define-public notmuch-vim + (package + (name "notmuch-vim") + (version (package-version notmuch)) + ;; The vim plugin is distributed via the notmuch release tarball. + (source (package-source notmuch)) + (build-system gnu-build-system) + (propagated-inputs + ;; XXX: This is a plugin, it will not be functional without + ;; vim-full (ruby), ruby-mail, and notmuch. + `(("notmuch" ,notmuch) + ("vim-full" ,vim-full) + ("ruby-mail" ,ruby-mail))) + (arguments + `(#:tests? #f ; no "test" target + ;; XXX: Replace the "vim80" folder with a dynamic name. + #:make-flags (list (string-append "prefix=" + (assoc-ref %outputs "out") + "/share/vim/vim80")) + #:phases + (modify-phases %standard-phases + (delete 'configure) + ;; This package lives in a subdirectory of the notmuch source + ;; tree, so chdir into it before building. + (add-after 'unpack 'enter-vim-dir + (lambda _ (chdir "vim") #t))))) + (home-page (package-home-page notmuch)) + (synopsis "Vim plugin of the Notmuch mail indexing library") + (description + "This package provides the Vim plugin to enable access to the +Notmuch mail indexing and search library in Vim.") + (license gpl3+))) + (define-public notmuch-addrlookup-c (package (name "notmuch-addrlookup-c") -- 2.11.0 ^ permalink raw reply related [flat|nested] 23+ messages in thread
* Re: [PATCH 2/2] gnu: Add notmuch-vim. 2017-01-14 15:08 ` [PATCH 2/2] gnu: Add notmuch-vim ng0 @ 2017-01-14 16:56 ` Marius Bakke 2017-01-14 17:28 ` ng0 2017-01-14 17:27 ` Marius Bakke 1 sibling, 1 reply; 23+ messages in thread From: Marius Bakke @ 2017-01-14 16:56 UTC (permalink / raw) To: ng0, guix-devel [-- Attachment #1: Type: text/plain, Size: 219 bytes --] ng0 <ng0@libertad.pw> writes: > * gnu/packages/mail.scm (notmuch-vim): New variable. I think vim plugins should go in vim.scm, even if it relates to a package residing elsewhere. Could you send an updated patch? TIA! [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 487 bytes --] ^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 2/2] gnu: Add notmuch-vim. 2017-01-14 16:56 ` Marius Bakke @ 2017-01-14 17:28 ` ng0 2017-01-14 17:40 ` Marius Bakke 0 siblings, 1 reply; 23+ messages in thread From: ng0 @ 2017-01-14 17:28 UTC (permalink / raw) To: Marius Bakke; +Cc: guix-devel Marius Bakke <mbakke@fastmail.com> writes: > ng0 <ng0@libertad.pw> writes: > >> * gnu/packages/mail.scm (notmuch-vim): New variable. > > I think vim plugins should go in vim.scm, even if it relates to a > package residing elsewhere. Could you send an updated patch? TIA! I disagree. Then we should split up the notmuch emacs integration and move it into emacs.scm by the same logic. I find mail.scm the best location. -- ♥Ⓐ ng0 -- https://www.inventati.org/patternsinthechaos/ ^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 2/2] gnu: Add notmuch-vim. 2017-01-14 17:28 ` ng0 @ 2017-01-14 17:40 ` Marius Bakke 2017-01-14 17:56 ` ng0 0 siblings, 1 reply; 23+ messages in thread From: Marius Bakke @ 2017-01-14 17:40 UTC (permalink / raw) To: ng0; +Cc: guix-devel [-- Attachment #1: Type: text/plain, Size: 677 bytes --] ng0 <ng0@libertad.pw> writes: > Marius Bakke <mbakke@fastmail.com> writes: > >> ng0 <ng0@libertad.pw> writes: >> >>> * gnu/packages/mail.scm (notmuch-vim): New variable. >> >> I think vim plugins should go in vim.scm, even if it relates to a >> package residing elsewhere. Could you send an updated patch? TIA! > > I disagree. Then we should split up the notmuch emacs integration > and move it into emacs.scm by the same logic. The emacs files are installed with the 'notmuch' package. If they are split out, I would argue that they should go in emacs.scm as well. I don't see the point in that though, since they are less than 1MB and do not carry any extra dependencies. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 487 bytes --] ^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 2/2] gnu: Add notmuch-vim. 2017-01-14 17:40 ` Marius Bakke @ 2017-01-14 17:56 ` ng0 2017-01-15 19:20 ` Marius Bakke 0 siblings, 1 reply; 23+ messages in thread From: ng0 @ 2017-01-14 17:56 UTC (permalink / raw) To: Marius Bakke; +Cc: guix-devel Marius Bakke <mbakke@fastmail.com> writes: > ng0 <ng0@libertad.pw> writes: > >> Marius Bakke <mbakke@fastmail.com> writes: >> >>> ng0 <ng0@libertad.pw> writes: >>> >>>> * gnu/packages/mail.scm (notmuch-vim): New variable. >>> >>> I think vim plugins should go in vim.scm, even if it relates to a >>> package residing elsewhere. Could you send an updated patch? TIA! >> >> I disagree. Then we should split up the notmuch emacs integration >> and move it into emacs.scm by the same logic. > > The emacs files are installed with the 'notmuch' package. If they are > split out, I would argue that they should go in emacs.scm as well. > > I don't see the point in that though, since they are less than 1MB and > do not carry any extra dependencies. With the vim removed from the inputs, I'd say this could be just another output? notmuch:vim notmuch:emacs If you use vim and try to install it you will soon realize that you need vim-full, but then we haven't fixed the ruby-mail dependency. So possibly moving it to vim is good? I have no preference I just think it's an mail application just as python-notmuch is in mail because it has something to do with notmuch and mail. But I also put ruby-mail into ruby.scm and not mail.scm and after all, does it even matter? mail.scm isn't so long that we should be bothered by one more package. -- ♥Ⓐ ng0 -- https://www.inventati.org/patternsinthechaos/ ^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 2/2] gnu: Add notmuch-vim. 2017-01-14 17:56 ` ng0 @ 2017-01-15 19:20 ` Marius Bakke 0 siblings, 0 replies; 23+ messages in thread From: Marius Bakke @ 2017-01-15 19:20 UTC (permalink / raw) To: ng0; +Cc: guix-devel [-- Attachment #1: Type: text/plain, Size: 1067 bytes --] ng0 <ng0@libertad.pw> writes: > Marius Bakke <mbakke@fastmail.com> writes: > >> ng0 <ng0@libertad.pw> writes: >> >>> Marius Bakke <mbakke@fastmail.com> writes: >>> >>>> ng0 <ng0@libertad.pw> writes: >>>> >>>>> * gnu/packages/mail.scm (notmuch-vim): New variable. >>>> >>>> I think vim plugins should go in vim.scm, even if it relates to a >>>> package residing elsewhere. Could you send an updated patch? TIA! >>> >>> I disagree. Then we should split up the notmuch emacs integration >>> and move it into emacs.scm by the same logic. >> >> The emacs files are installed with the 'notmuch' package. If they are >> split out, I would argue that they should go in emacs.scm as well. >> >> I don't see the point in that though, since they are less than 1MB and >> do not carry any extra dependencies. > > With the vim removed from the inputs, I'd say this could be just > another output? > > notmuch:vim > notmuch:emacs This seems fine to me, if it is possible to add propagation of ruby-mail on a specific output. Otherwise we should use a proper package declaration. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 487 bytes --] ^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 2/2] gnu: Add notmuch-vim. 2017-01-14 15:08 ` [PATCH 2/2] gnu: Add notmuch-vim ng0 2017-01-14 16:56 ` Marius Bakke @ 2017-01-14 17:27 ` Marius Bakke 2017-01-14 17:50 ` ng0 1 sibling, 1 reply; 23+ messages in thread From: Marius Bakke @ 2017-01-14 17:27 UTC (permalink / raw) To: ng0, guix-devel [-- Attachment #1: Type: text/plain, Size: 3586 bytes --] ng0 <ng0@libertad.pw> writes: > * gnu/packages/mail.scm (notmuch-vim): New variable. > --- > gnu/packages/mail.scm | 37 ++++++++++++++++++++++++++++++++++++- > 1 file changed, 36 insertions(+), 1 deletion(-) > > diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm > index 206055751..89aa2444d 100644 > --- a/gnu/packages/mail.scm > +++ b/gnu/packages/mail.scm > @@ -15,7 +15,7 @@ > ;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org> > ;;; Copyright © 2016 Alex Kost <alezost@gmail.com> > ;;; Copyright © 2016 Troy Sankey <sankeytms@gmail.com> > -;;; Copyright © 2016 ng0 <ngillmann@runbox.com> > +;;; Copyright © 2016, 2017 ng0 <contact.ng0@cryptolab.net> > ;;; Copyright © 2016 Clément Lassieur <clement@lassieur.org> > ;;; Copyright © 2016 Arun Isaac <arunisaac@systemreboot.net> > ;;; Copyright © 2016 John Darrington <jmd@gnu.org> > @@ -71,6 +71,7 @@ > #:use-module (gnu packages perl) > #:use-module (gnu packages python) > #:use-module (gnu packages readline) > + #:use-module (gnu packages ruby) > #:use-module (gnu packages search) > #:use-module (gnu packages texinfo) > #:use-module (gnu packages compression) > @@ -83,6 +84,7 @@ > #:use-module (gnu packages screen) > #:use-module (gnu packages tls) > #:use-module (gnu packages networking) > + #:use-module (gnu packages vim) > #:use-module (gnu packages web) > #:use-module (gnu packages xml) > #:use-module (gnu packages xorg) > @@ -587,6 +589,39 @@ invoking @command{notifymuch} from the post-new hook.") > ing, and tagging large collections of email messages.") > (license gpl3+))) > > +(define-public notmuch-vim > + (package > + (name "notmuch-vim") > + (version (package-version notmuch)) > + ;; The vim plugin is distributed via the notmuch release tarball. > + (source (package-source notmuch)) > + (build-system gnu-build-system) > + (propagated-inputs > + ;; XXX: This is a plugin, it will not be functional without > + ;; vim-full (ruby), ruby-mail, and notmuch. > + `(("notmuch" ,notmuch) > + ("vim-full" ,vim-full) I think if someone installs this plugin, they already have vim and notmuch, and may want to use other versions etc. So those can be omitted. > + ("ruby-mail" ,ruby-mail))) > + (arguments > + `(#:tests? #f ; no "test" target > + ;; XXX: Replace the "vim80" folder with a dynamic name. > + #:make-flags (list (string-append "prefix=" > + (assoc-ref %outputs "out") > + "/share/vim/vim80")) ^^ You can use (version-major+minor (package-version vim)) here. > + #:phases > + (modify-phases %standard-phases > + (delete 'configure) > + ;; This package lives in a subdirectory of the notmuch source > + ;; tree, so chdir into it before building. > + (add-after 'unpack 'enter-vim-dir > + (lambda _ (chdir "vim") #t))))) > + (home-page (package-home-page notmuch)) > + (synopsis "Vim plugin of the Notmuch mail indexing library") > + (description > + "This package provides the Vim plugin to enable access to the ^^^ s/the/a Otherwise LGTM. > +Notmuch mail indexing and search library in Vim.") > + (license gpl3+))) > + > (define-public notmuch-addrlookup-c > (package > (name "notmuch-addrlookup-c") > -- > 2.11.0 [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 487 bytes --] ^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 2/2] gnu: Add notmuch-vim. 2017-01-14 17:27 ` Marius Bakke @ 2017-01-14 17:50 ` ng0 2017-01-15 19:16 ` Marius Bakke 0 siblings, 1 reply; 23+ messages in thread From: ng0 @ 2017-01-14 17:50 UTC (permalink / raw) To: Marius Bakke; +Cc: guix-devel Marius Bakke <mbakke@fastmail.com> writes: > ng0 <ng0@libertad.pw> writes: > >> * gnu/packages/mail.scm (notmuch-vim): New variable. >> --- >> gnu/packages/mail.scm | 37 ++++++++++++++++++++++++++++++++++++- >> 1 file changed, 36 insertions(+), 1 deletion(-) >> >> diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm >> index 206055751..89aa2444d 100644 >> --- a/gnu/packages/mail.scm >> +++ b/gnu/packages/mail.scm >> @@ -15,7 +15,7 @@ >> ;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org> >> ;;; Copyright © 2016 Alex Kost <alezost@gmail.com> >> ;;; Copyright © 2016 Troy Sankey <sankeytms@gmail.com> >> -;;; Copyright © 2016 ng0 <ngillmann@runbox.com> >> +;;; Copyright © 2016, 2017 ng0 <contact.ng0@cryptolab.net> >> ;;; Copyright © 2016 Clément Lassieur <clement@lassieur.org> >> ;;; Copyright © 2016 Arun Isaac <arunisaac@systemreboot.net> >> ;;; Copyright © 2016 John Darrington <jmd@gnu.org> >> @@ -71,6 +71,7 @@ >> #:use-module (gnu packages perl) >> #:use-module (gnu packages python) >> #:use-module (gnu packages readline) >> + #:use-module (gnu packages ruby) >> #:use-module (gnu packages search) >> #:use-module (gnu packages texinfo) >> #:use-module (gnu packages compression) >> @@ -83,6 +84,7 @@ >> #:use-module (gnu packages screen) >> #:use-module (gnu packages tls) >> #:use-module (gnu packages networking) >> + #:use-module (gnu packages vim) >> #:use-module (gnu packages web) >> #:use-module (gnu packages xml) >> #:use-module (gnu packages xorg) >> @@ -587,6 +589,39 @@ invoking @command{notifymuch} from the post-new hook.") >> ing, and tagging large collections of email messages.") >> (license gpl3+))) >> >> +(define-public notmuch-vim >> + (package >> + (name "notmuch-vim") >> + (version (package-version notmuch)) >> + ;; The vim plugin is distributed via the notmuch release tarball. >> + (source (package-source notmuch)) >> + (build-system gnu-build-system) >> + (propagated-inputs >> + ;; XXX: This is a plugin, it will not be functional without >> + ;; vim-full (ruby), ruby-mail, and notmuch. >> + `(("notmuch" ,notmuch) >> + ("vim-full" ,vim-full) > > I think if someone installs this plugin, they already have vim and > notmuch, and may want to use other versions etc. So those can be > omitted. > >> + ("ruby-mail" ,ruby-mail))) >> + (arguments >> + `(#:tests? #f ; no "test" target >> + ;; XXX: Replace the "vim80" folder with a dynamic name. >> + #:make-flags (list (string-append "prefix=" >> + (assoc-ref %outputs "out") >> + "/share/vim/vim80")) > ^^ > You can use (version-major+minor (package-version vim)) here. That's not the same as vim80 though... resulting structure: . └── share └── vim └── 8.0 ├── doc │ └── notmuch.txt ├── plugin │ └── notmuch.vim └── syntax ├── notmuch-compose.vim ├── notmuch-folders.vim ├── notmuch-git-diff.vim ├── notmuch-search.vim └── notmuch-show.vim vim itself uses the share/vim/vim80 directory. >> + #:phases >> + (modify-phases %standard-phases >> + (delete 'configure) >> + ;; This package lives in a subdirectory of the notmuch source >> + ;; tree, so chdir into it before building. >> + (add-after 'unpack 'enter-vim-dir >> + (lambda _ (chdir "vim") #t))))) >> + (home-page (package-home-page notmuch)) >> + (synopsis "Vim plugin of the Notmuch mail indexing library") >> + (description >> + "This package provides the Vim plugin to enable access to the > ^^^ > s/the/a Okay > Otherwise LGTM. > >> +Notmuch mail indexing and search library in Vim.") >> + (license gpl3+))) >> + >> (define-public notmuch-addrlookup-c >> (package >> (name "notmuch-addrlookup-c") >> -- >> 2.11.0 -- ♥Ⓐ ng0 -- https://www.inventati.org/patternsinthechaos/ ^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 2/2] gnu: Add notmuch-vim. 2017-01-14 17:50 ` ng0 @ 2017-01-15 19:16 ` Marius Bakke 2017-01-15 21:29 ` notmuch-vim ,v2 ng0 0 siblings, 1 reply; 23+ messages in thread From: Marius Bakke @ 2017-01-15 19:16 UTC (permalink / raw) To: ng0; +Cc: guix-devel [-- Attachment #1: Type: text/plain, Size: 3343 bytes --] ng0 <ng0@libertad.pw> writes: > Marius Bakke <mbakke@fastmail.com> writes: > >> ng0 <ng0@libertad.pw> writes: >> >>> * gnu/packages/mail.scm (notmuch-vim): New variable. >>> --- >>> gnu/packages/mail.scm | 37 ++++++++++++++++++++++++++++++++++++- >>> 1 file changed, 36 insertions(+), 1 deletion(-) >>> >>> diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm >>> index 206055751..89aa2444d 100644 >>> --- a/gnu/packages/mail.scm >>> +++ b/gnu/packages/mail.scm >>> @@ -15,7 +15,7 @@ >>> ;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org> >>> ;;; Copyright © 2016 Alex Kost <alezost@gmail.com> >>> ;;; Copyright © 2016 Troy Sankey <sankeytms@gmail.com> >>> -;;; Copyright © 2016 ng0 <ngillmann@runbox.com> >>> +;;; Copyright © 2016, 2017 ng0 <contact.ng0@cryptolab.net> >>> ;;; Copyright © 2016 Clément Lassieur <clement@lassieur.org> >>> ;;; Copyright © 2016 Arun Isaac <arunisaac@systemreboot.net> >>> ;;; Copyright © 2016 John Darrington <jmd@gnu.org> >>> @@ -71,6 +71,7 @@ >>> #:use-module (gnu packages perl) >>> #:use-module (gnu packages python) >>> #:use-module (gnu packages readline) >>> + #:use-module (gnu packages ruby) >>> #:use-module (gnu packages search) >>> #:use-module (gnu packages texinfo) >>> #:use-module (gnu packages compression) >>> @@ -83,6 +84,7 @@ >>> #:use-module (gnu packages screen) >>> #:use-module (gnu packages tls) >>> #:use-module (gnu packages networking) >>> + #:use-module (gnu packages vim) >>> #:use-module (gnu packages web) >>> #:use-module (gnu packages xml) >>> #:use-module (gnu packages xorg) >>> @@ -587,6 +589,39 @@ invoking @command{notifymuch} from the post-new hook.") >>> ing, and tagging large collections of email messages.") >>> (license gpl3+))) >>> >>> +(define-public notmuch-vim >>> + (package >>> + (name "notmuch-vim") >>> + (version (package-version notmuch)) >>> + ;; The vim plugin is distributed via the notmuch release tarball. >>> + (source (package-source notmuch)) >>> + (build-system gnu-build-system) >>> + (propagated-inputs >>> + ;; XXX: This is a plugin, it will not be functional without >>> + ;; vim-full (ruby), ruby-mail, and notmuch. >>> + `(("notmuch" ,notmuch) >>> + ("vim-full" ,vim-full) >> >> I think if someone installs this plugin, they already have vim and >> notmuch, and may want to use other versions etc. So those can be >> omitted. >> >>> + ("ruby-mail" ,ruby-mail))) >>> + (arguments >>> + `(#:tests? #f ; no "test" target >>> + ;; XXX: Replace the "vim80" folder with a dynamic name. >>> + #:make-flags (list (string-append "prefix=" >>> + (assoc-ref %outputs "out") >>> + "/share/vim/vim80")) >> ^^ >> You can use (version-major+minor (package-version vim)) here. > > That's not the same as vim80 though... resulting structure: Oops, you're right. I forgot that the dot was included. Let's just keep it 'hard-coded' for now. We can add a helper function to determine the correct directory if/when this becomes a problem / recurring theme. Yet another reason to put it in vim.scm.. ;-) [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 487 bytes --] ^ permalink raw reply [flat|nested] 23+ messages in thread
* notmuch-vim ,v2 2017-01-15 19:16 ` Marius Bakke @ 2017-01-15 21:29 ` ng0 2017-01-15 21:29 ` [PATCH] gnu: Add notmuch-vim ng0 0 siblings, 1 reply; 23+ messages in thread From: ng0 @ 2017-01-15 21:29 UTC (permalink / raw) To: guix-devel Updated: moved package to vim.scm. ^ permalink raw reply [flat|nested] 23+ messages in thread
* [PATCH] gnu: Add notmuch-vim. 2017-01-15 21:29 ` notmuch-vim ,v2 ng0 @ 2017-01-15 21:29 ` ng0 2017-01-15 21:50 ` Marius Bakke 0 siblings, 1 reply; 23+ messages in thread From: ng0 @ 2017-01-15 21:29 UTC (permalink / raw) To: guix-devel * gnu/packages/vim.scm (notmuch-vim): New variable. --- gnu/packages/vim.scm | 34 +++++++++++++++++++++++++++++++++- 1 file changed, 33 insertions(+), 1 deletion(-) diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm index 7ba4e6ac3..3eba994fa 100644 --- a/gnu/packages/vim.scm +++ b/gnu/packages/vim.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com> ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> -;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is> +;;; Copyright © 2016, 2017 ng0 <contact.ng0@cryptolab.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -36,6 +36,7 @@ #:use-module (gnu packages image) #:use-module (gnu packages linux) #:use-module (gnu packages lua) + #:use-module (gnu packages mail) #:use-module (gnu packages ncurses) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) @@ -207,3 +208,34 @@ from the @command{vi}-editor: @end enumerate With the package comes a plugin to use vifm as a vim file selector.") (license license:gpl2+))) + +(define-public notmuch-vim + (package + (name "notmuch-vim") + (version (package-version notmuch)) + ;; The vim plugin is distributed via the notmuch release tarball. + (source (package-source notmuch)) + (build-system gnu-build-system) + (propagated-inputs + ;; XXX: This is a plugin, it will not be functional without + ;; vim-full (ruby), ruby-mail, and notmuch. + `(("ruby-mail" ,ruby-mail))) + (arguments + `(#:tests? #f ; no "test" target + #:make-flags (list + (string-append "prefix=" + (assoc-ref %outputs "out") + "/share/vim/vim80")) + #:phases + (modify-phases %standard-phases + (delete 'configure) + ;; This package lives in a subdirectory of the notmuch source + ;; tree, so chdir into it before building. + (add-after 'unpack 'enter-vim-dir + (lambda _ (chdir "vim") #t))))) + (home-page (package-home-page notmuch)) + (synopsis "Vim plugin of the Notmuch mail indexing library") + (description + "This package provides a Vim plugin to enable access to the +Notmuch mail indexing and search library in Vim.") + (license license:gpl3+))) -- 2.11.0 ^ permalink raw reply related [flat|nested] 23+ messages in thread
* Re: [PATCH] gnu: Add notmuch-vim. 2017-01-15 21:29 ` [PATCH] gnu: Add notmuch-vim ng0 @ 2017-01-15 21:50 ` Marius Bakke 2017-01-15 22:44 ` ng0 0 siblings, 1 reply; 23+ messages in thread From: Marius Bakke @ 2017-01-15 21:50 UTC (permalink / raw) To: ng0, guix-devel [-- Attachment #1: Type: text/plain, Size: 528 bytes --] ng0 <ng0@libertad.pw> writes: > * gnu/packages/vim.scm (notmuch-vim): New variable. Thanks for this! I tried installing this plugin, but get an error while loading it according to upstream instructions[0]: Error detected while processing command line: E492: Not an editor command: :NotMuch Any ideas? The README seems to suggest this depends on the notmuch ruby bindings as well, which is not currently built on Guix. How did you test this? [0] https://git.notmuchmail.org/git/notmuch/blob/HEAD:/vim/README [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 487 bytes --] ^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH] gnu: Add notmuch-vim. 2017-01-15 21:50 ` Marius Bakke @ 2017-01-15 22:44 ` ng0 2017-01-16 0:48 ` Marius Bakke 0 siblings, 1 reply; 23+ messages in thread From: ng0 @ 2017-01-15 22:44 UTC (permalink / raw) To: Marius Bakke; +Cc: guix-devel Marius Bakke <mbakke@fastmail.com> writes: > ng0 <ng0@libertad.pw> writes: > >> * gnu/packages/vim.scm (notmuch-vim): New variable. > > Thanks for this! I tried installing this plugin, but get an error while > loading it according to upstream instructions[0]: > > Error detected while processing command line: > E492: Not an editor command: :NotMuch > > Any ideas? The README seems to suggest this depends on the notmuch ruby > bindings as well, which is not currently built on Guix. How did you test > this? I really assumed that vim-full provides the ruby bindings and that they meant just just, and not just another bindings set. Grml... Okay. Do you use vim? I don't do so currently, so I assumed it just works when it copied. > [0] https://git.notmuchmail.org/git/notmuch/blob/HEAD:/vim/README -- ♥Ⓐ ng0 -- https://www.inventati.org/patternsinthechaos/ ^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH] gnu: Add notmuch-vim. 2017-01-15 22:44 ` ng0 @ 2017-01-16 0:48 ` Marius Bakke 2017-01-16 15:10 ` notmuch-vim, ruby-notmuch ng0 0 siblings, 1 reply; 23+ messages in thread From: Marius Bakke @ 2017-01-16 0:48 UTC (permalink / raw) To: ng0; +Cc: guix-devel [-- Attachment #1: Type: text/plain, Size: 1152 bytes --] ng0 <ng0@libertad.pw> writes: > Marius Bakke <mbakke@fastmail.com> writes: > >> ng0 <ng0@libertad.pw> writes: >> >>> * gnu/packages/vim.scm (notmuch-vim): New variable. >> >> Thanks for this! I tried installing this plugin, but get an error while >> loading it according to upstream instructions[0]: >> >> Error detected while processing command line: >> E492: Not an editor command: :NotMuch >> >> Any ideas? The README seems to suggest this depends on the notmuch ruby >> bindings as well, which is not currently built on Guix. How did you test >> this? > > I really assumed that vim-full provides the ruby bindings and > that they meant just just, and not just another bindings > set. Grml... Okay. I suspect we just need to package 'ruby-notmuch' in a similar vein to 'python-notmuch' and propagate it with the plugin. Possibly also make sure the 'ruby' executable is referenced by vim/this plugin. > Do you use vim? I don't do so currently, so I assumed it just works > when it copied. I don't use vim often, but when I do, it's to try out plugins from software I trust ;-) it's more fun when it works, though. [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 487 bytes --] ^ permalink raw reply [flat|nested] 23+ messages in thread
* notmuch-vim, ruby-notmuch. 2017-01-16 0:48 ` Marius Bakke @ 2017-01-16 15:10 ` ng0 2017-01-16 15:10 ` [PATCH 1/2] gnu: Add ruby-notmuch ng0 2017-01-16 15:10 ` [PATCH 2/2] gnu: Add notmuch-vim ng0 0 siblings, 2 replies; 23+ messages in thread From: ng0 @ 2017-01-16 15:10 UTC (permalink / raw) To: guix-devel The first patch adds ruby-notmuch and needs debugging. The second patch adds notmuch-vim, which needs the first one apparently. ^ permalink raw reply [flat|nested] 23+ messages in thread
* [PATCH 1/2] gnu: Add ruby-notmuch. 2017-01-16 15:10 ` notmuch-vim, ruby-notmuch ng0 @ 2017-01-16 15:10 ` ng0 2017-01-18 18:39 ` Marius Bakke 2017-01-16 15:10 ` [PATCH 2/2] gnu: Add notmuch-vim ng0 1 sibling, 1 reply; 23+ messages in thread From: ng0 @ 2017-01-16 15:10 UTC (permalink / raw) To: guix-devel * gnu/packages/ruby.scm (ruby-notmuch): New variable. --- gnu/packages/ruby.scm | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index fb89238bd..9d9b87a93 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -41,6 +41,7 @@ #:use-module (guix git-download) #:use-module (guix utils) #:use-module (guix build-system gnu) + #:use-module (gnu packages mail) #:use-module (gnu packages xml) #:use-module (gnu packages web) #:use-module (guix build-system ruby)) @@ -4231,3 +4232,20 @@ really opens up the email messages you are parsing, if you know what you are doing, you can fiddle with every last bit of your email directly.") (home-page "https://github.com/mikel/mail") (license license:expat))) + +(define-public ruby-notmuch + (package + (inherit notmuch) + (name "ruby-notmuch") + (version (package-version notmuch)) + ;; The bindings are distributed via the notmuch release tarball. + (arguments + `(#:make-flags (list "ruby-bindings") + ,@(package-arguments notmuch))) + (inputs + `(("ruby" ,ruby) + ,@(package-inputs notmuch))) + (synopsis "Ruby bindings of the Notmuch mail indexing library") + (description + "This package provides Ruby bindings to use the Notmuch mail indexing +and search library."))) -- 2.11.0 ^ permalink raw reply related [flat|nested] 23+ messages in thread
* Re: [PATCH 1/2] gnu: Add ruby-notmuch. 2017-01-16 15:10 ` [PATCH 1/2] gnu: Add ruby-notmuch ng0 @ 2017-01-18 18:39 ` Marius Bakke [not found] ` <87r340gp3a.fsf@wasp.i-did-not-set--mail-host-address--so-tickle-me> 2017-06-11 20:24 ` ng0 0 siblings, 2 replies; 23+ messages in thread From: Marius Bakke @ 2017-01-18 18:39 UTC (permalink / raw) To: ng0, guix-devel [-- Attachment #1: Type: text/plain, Size: 677 bytes --] ng0 <ng0@libertad.pw> writes: > * gnu/packages/ruby.scm (ruby-notmuch): New variable. I tried building this, but get some linker errors. /tmp/guix-build-ruby-notmuch-0.23.5.drv-0/notmuch-0.23.5/bindings/ruby/database.c:105: undefined reference to `rb_ensure' database.o: In function `notmuch_rb_database_path': /tmp/guix-build-ruby-notmuch-0.23.5.drv-0/notmuch-0.23.5/bindings/ruby/database.c:139: undefined reference to `rb_str_new_cstr' database.o: In function `notmuch_rb_database_get_all_tags': /tmp/guix-build-ruby-notmuch-0.23.5.drv-0/notmuch-0.23.5/bindings/ruby/database.c:398: undefined reference to `rb_data_object_wrap' collect2: error: ld returned 1 exit status [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 487 bytes --] ^ permalink raw reply [flat|nested] 23+ messages in thread
[parent not found: <87r340gp3a.fsf@wasp.i-did-not-set--mail-host-address--so-tickle-me>]
[parent not found: <87eg00894w.fsf@kirby.i-did-not-set--mail-host-address--so-tickle-me>]
* Re: [PATCH 1/2] gnu: Add ruby-notmuch. [not found] ` <87eg00894w.fsf@kirby.i-did-not-set--mail-host-address--so-tickle-me> @ 2017-01-18 20:50 ` ng0 0 siblings, 0 replies; 23+ messages in thread From: ng0 @ 2017-01-18 20:50 UTC (permalink / raw) To: Marius Bakke; +Cc: guix-devel Marius Bakke <mbakke@fastmail.com> writes: > ng0 <contact.ng0@cryptolab.net> writes: > >> Marius Bakke <mbakke@fastmail.com> writes: >> >>> ng0 <ng0@libertad.pw> writes: >>> >>>> * gnu/packages/ruby.scm (ruby-notmuch): New variable. >>> >>> I tried building this, but get some linker errors. >> >> That's why I included the note about it in the front letter. > > Oh, I did not see the "needs debugging" notice. I think it would be more > appropriate to send the patch standalone and ask for help. In this case it doesn't make much sense, since 2 depends on 1. Okay. I'm doing it just for completions sake though, so this patch might fall into the abbys of branches for weeks or months now. >> I have no time to get into ruby debugging at the moment. > > We're all busy here, sending non-working patches does not help! I can only ask for help though. In some cases I don't get it, so I'm stuck for months at the same point, and because email does not really come with enough features, people sometimes start duplicating work (see python-dulwich), so I really like to call for help and give information in case someone really reads it. -- ♥Ⓐ ng0 -- https://www.inventati.org/patternsinthechaos/ ^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [PATCH 1/2] gnu: Add ruby-notmuch. 2017-01-18 18:39 ` Marius Bakke [not found] ` <87r340gp3a.fsf@wasp.i-did-not-set--mail-host-address--so-tickle-me> @ 2017-06-11 20:24 ` ng0 1 sibling, 0 replies; 23+ messages in thread From: ng0 @ 2017-06-11 20:24 UTC (permalink / raw) To: Marius Bakke; +Cc: guix-devel [-- Attachment #1: Type: text/plain, Size: 1012 bytes --] Hi, sometimes I have long latency here ;) Marius Bakke transcribed 1.3K bytes: > ng0 <ng0@libertad.pw> writes: > > > * gnu/packages/ruby.scm (ruby-notmuch): New variable. > > I tried building this, but get some linker errors. > > /tmp/guix-build-ruby-notmuch-0.23.5.drv-0/notmuch-0.23.5/bindings/ruby/database.c:105: undefined reference to `rb_ensure' > database.o: In function `notmuch_rb_database_path': > /tmp/guix-build-ruby-notmuch-0.23.5.drv-0/notmuch-0.23.5/bindings/ruby/database.c:139: undefined reference to `rb_str_new_cstr' > database.o: In function `notmuch_rb_database_get_all_tags': > /tmp/guix-build-ruby-notmuch-0.23.5.drv-0/notmuch-0.23.5/bindings/ruby/database.c:398: undefined reference to `rb_data_object_wrap' > collect2: error: ld returned 1 exit status I have rebased the patches (not appended), but I have not looked into how to solve this error. Is this ruby specific? notmuch specific? Any idea? -- ng0 OpenPG: A88C8ADD129828D7EAC02E52E22F9BBFEE348588 [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 23+ messages in thread
* [PATCH 2/2] gnu: Add notmuch-vim. 2017-01-16 15:10 ` notmuch-vim, ruby-notmuch ng0 2017-01-16 15:10 ` [PATCH 1/2] gnu: Add ruby-notmuch ng0 @ 2017-01-16 15:10 ` ng0 1 sibling, 0 replies; 23+ messages in thread From: ng0 @ 2017-01-16 15:10 UTC (permalink / raw) To: guix-devel * gnu/packages/vim.scm (notmuch-vim): New variable. --- gnu/packages/vim.scm | 35 ++++++++++++++++++++++++++++++++++- 1 file changed, 34 insertions(+), 1 deletion(-) diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm index c2c0ccad9..9fa796ba5 100644 --- a/gnu/packages/vim.scm +++ b/gnu/packages/vim.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com> ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> -;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is> +;;; Copyright © 2016, 2017 ng0 <contact.ng0@cryptolab.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -36,6 +36,7 @@ #:use-module (gnu packages image) #:use-module (gnu packages linux) #:use-module (gnu packages lua) + #:use-module (gnu packages mail) #:use-module (gnu packages ncurses) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) @@ -207,3 +208,35 @@ from the @command{vi}-editor: @end enumerate With the package comes a plugin to use vifm as a vim file selector.") (license license:gpl2+))) + +(define-public notmuch-vim + (package + (name "notmuch-vim") + (version (package-version notmuch)) + ;; The vim plugin is distributed via the notmuch release tarball. + (source (package-source notmuch)) + (build-system gnu-build-system) + (propagated-inputs + ;; XXX: This is a plugin, it will not be functional without + ;; vim-full (ruby), ruby-mail, and notmuch. + `(("ruby-mail" ,ruby-mail) + ("ruby-notmuch" ,ruby-notmuch))) + (arguments + `(#:tests? #f ; no "test" target + #:make-flags (list + (string-append "prefix=" + (assoc-ref %outputs "out") + "/share/vim/vim80")) + #:phases + (modify-phases %standard-phases + (delete 'configure) + ;; This package lives in a subdirectory of the notmuch source + ;; tree, so chdir into it before building. + (add-after 'unpack 'enter-vim-dir + (lambda _ (chdir "vim") #t))))) + (home-page (package-home-page notmuch)) + (synopsis "Vim plugin of the Notmuch mail indexing library") + (description + "This package provides a Vim plugin to enable access to the +Notmuch mail indexing and search library in Vim.") + (license license:gpl3+))) -- 2.11.0 ^ permalink raw reply related [flat|nested] 23+ messages in thread
end of thread, other threads:[~2017-06-11 20:24 UTC | newest] Thread overview: 23+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2017-01-14 15:08 Add: notmuch-vim ng0 2017-01-14 15:08 ` [PATCH 1/2] gnu: Add ruby-mail ng0 2017-01-14 16:55 ` Marius Bakke 2017-01-14 15:08 ` [PATCH 2/2] gnu: Add notmuch-vim ng0 2017-01-14 16:56 ` Marius Bakke 2017-01-14 17:28 ` ng0 2017-01-14 17:40 ` Marius Bakke 2017-01-14 17:56 ` ng0 2017-01-15 19:20 ` Marius Bakke 2017-01-14 17:27 ` Marius Bakke 2017-01-14 17:50 ` ng0 2017-01-15 19:16 ` Marius Bakke 2017-01-15 21:29 ` notmuch-vim ,v2 ng0 2017-01-15 21:29 ` [PATCH] gnu: Add notmuch-vim ng0 2017-01-15 21:50 ` Marius Bakke 2017-01-15 22:44 ` ng0 2017-01-16 0:48 ` Marius Bakke 2017-01-16 15:10 ` notmuch-vim, ruby-notmuch ng0 2017-01-16 15:10 ` [PATCH 1/2] gnu: Add ruby-notmuch ng0 2017-01-18 18:39 ` Marius Bakke [not found] ` <87r340gp3a.fsf@wasp.i-did-not-set--mail-host-address--so-tickle-me> [not found] ` <87eg00894w.fsf@kirby.i-did-not-set--mail-host-address--so-tickle-me> 2017-01-18 20:50 ` ng0 2017-06-11 20:24 ` ng0 2017-01-16 15:10 ` [PATCH 2/2] gnu: Add notmuch-vim ng0
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/guix.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).