--- Begin Message ---
Subject: |
Add bower (it's not what you're thinking) |
Date: |
Sun, 26 Sep 2021 19:08:36 -0400 |
Hi Guixers!
Here's bower, a notmuch client written in mercury.
This thing is awesome! It's my main email client.
I use it paired with offlineimap3, msmtp, and vis (composing emails).
One of the unique things about bower is that:
> Bower is designed such that it can be run on the local machine but call
> out to notmuch on a remote machine (that holds your mail) via ssh. The
> advantage is that you can start helper programs on the local machine
> (e.g. a web browser or image viewer), and add or save attachments on
> the local filesystem, even if your mail archive is stored on a different
> machine.
Tests are enabled and passing.
If anyone can't wait for this bower to get reviewed and merged then it is also
available now from GuixRUS channel:
https://git.sr.ht/~whereiseveryone/guixrus/tree/master/item/guixrus/packages/bower.scm
Bower's packaged for alpine linux, gentoo, aur and nix. I currently maintain
the nix package also:
https://github.com/NixOS/nixpkgs/blob/nixos-unstable/pkgs/applications/networking/mailreaders/notmuch-bower/default.nix#L34
all best,
jgart
3B1D 7F19 E36B B60C 0F5B 2CA9 A52A A2B4 77B6 DD35
https://github.com/wangp/bower
My bower config:
https://git.sr.ht/~jgart/dotfiles/tree/master/item/private_dot_config/bower/bower.conf
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#50833: [PATCH] Add Bower (notmuch curses email client) |
Date: |
Fri, 02 Sep 2022 10:05:25 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.1 (gnu/linux) |
Hi,
jgart <jgart@dismail.de> writes:
> * gnu/packages/mail.scm (bower): New variable.
>
> Hi Maxim,
>
> Here's a version 3 patch set.
>
> I bumped bower to version 1.0 which was released a few days ago.
Thanks.
I've made the following changes:
--8<---------------cut here---------------start------------->8---
modified gnu/packages/mail.scm
@@ -1517,51 +1517,50 @@ (define-public bower
(source
(origin
(method git-fetch)
- (uri
- (git-reference
- (url home-page)
- (commit version)))
+ (uri (git-reference
+ (url home-page)
+ (commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0vcsbxlsvr2wv3c7sfr3yj21kbqy259skpxg00vf5bdkbc8qknq4"))))
(build-system gnu-build-system)
(arguments
- (list
- #:make-flags
- #~(list
- "bower"
- "man"
- (string-append "CC=" #+(cc-for-target))
- (string-append "prefix=" #$output))
- #:phases
- #~(modify-phases %standard-phases
- (delete 'configure)
- (add-after 'unpack 'patch-executables
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* "src/detect_mime_type.m"
- (("\"file")
- (string-append "\"" (search-input-file inputs
"/bin/file"))))
- (substitute* "src/compose.m"
- (("\"base64")
- (string-append "\"" (search-input-file inputs
"/bin/base64"))))
- (substitute* "src/prog_config.m"
- (("\\(\"false")
- (string-append "(\"" (search-input-file inputs
"/bin/false")))
- (("\\(\"notmuch\"")
- (string-append "(\"" (search-input-file inputs
"/bin/notmuch") "\""))
- (("/usr/bin/sendmail")
- (search-input-file inputs "/sbin/sendmail")))))
- (replace 'check
- (lambda* (#:key tests? #:allow-other-keys)
- (when tests?
- (with-directory-excursion "tests"
- (invoke "make")))))
- (replace 'install
- (lambda* _
- (let ((bin (string-append #$output "/bin"))
- (man (string-append #$output "/share/man/man1")))
- (install-file "bower" bin)
- (install-file "bower.1" man)))))))
+ (list
+ #:make-flags #~(list "bower" "man"
+ (string-append "CC=" #+(cc-for-target))
+ (string-append "prefix=" #$output))
+ #:parallel-tests? #f ;parallelism breaks test suite
+ #:phases
+ #~(modify-phases %standard-phases
+ (delete 'configure)
+ (add-after 'unpack 'patch-executables
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "src/detect_mime_type.m"
+ (("\"file\"")
+ (format #f "~s" (search-input-file inputs "bin/file"))))
+ (substitute* "src/compose.m"
+ (("\"base64\"")
+ (format #f "~s" (search-input-file inputs "bin/base64"))))
+ (substitute* "src/prog_config.m"
+ (("shell_quoted\\(\"false\")")
+ (format #f "shell_quoted(~s)"
+ (search-input-file inputs "bin/false")))
+ (("shell_quoted\\(\"notmuch\")")
+ (format #f "shell_quoted(~s)"
+ (search-input-file inputs "bin/notmuch")))
+ (("/usr/bin/sendmail")
+ (search-input-file inputs "/sbin/sendmail")))))
+ (replace 'check
+ (lambda* (#:key parallel-tests? tests? #:allow-other-keys)
+ (when tests?
+ (invoke "make" "-C" "tests"
+ "-j" (if parallel-tests?
+ (number->string (parallel-job-count))
+ "1")))))
+ (replace 'install
+ (lambda* _
+ (install-file "bower" (string-append #$output "/bin"))
+ (install-file "bower.1" (string-append #$output
+ "/share/man/man1")))))))
(native-inputs
(list diffutils
gawk
@@ -1569,14 +1568,14 @@ (define-public bower
pandoc
util-linux))
(inputs
- (list gpgme
- coreutils
+ (list coreutils
+ gpgme
+ ncurses
notmuch
- sendmail
- ncurses))
- (synopsis "Terminal client for the notmuch email system")
- (description "@code{bower} is a curses frontend for the notmuch email
-system. It is written in @{mercury}.")
+ sendmail))
+ (synopsis "Terminal client for the Notmuch email system")
+ (description "@code{bower} is a curses front-end for the Notmuch email
+system, written in the Mercury language.")
(license license:gpl3+)))
--8<---------------cut here---------------end--------------->8---
I also added:
--8<---------------cut here---------------start------------->8---
(properties `((cpe-name . "bower-cpe-refers-to-a-different-bower")))
--8<---------------cut here---------------end--------------->8---
After realizing the CPE database referred to a different package with
the same name, reporting a false positive.
And pushed!
Thank you,
Closing.
Maxim
--- End Message ---