Re: [BUG] gmime-3.0.1 (was: [PATCH] crypto: gracefully handle gmime errors)

2017-09-05 Thread Jan Malakhovski
David Bremner  writes:

> There is code involved with configuring gmime-2.6, which nonetheless
> does not involve calling gpg itself.  As for notmuch-crypto.el, yes it's
> true that the emacs client sometimes does some stuff directly with gpg,
> but that has nothing to do with gmime.

That's what I wanted to hear. Thank you! (And another thanks for the
patience.)

Cheers,
  Jan
___
notmuch mailing list
notmuch@notmuchmail.org
https://notmuchmail.org/mailman/listinfo/notmuch


Re: [BUG] gmime-3.0.1 (was: [PATCH] crypto: gracefully handle gmime errors)

2017-09-05 Thread David Bremner
Jan Malakhovski  writes:
>
> Why then at the very least
>
> - crypto.c
> - notmuch-config.c
> - emacs/notmuch-crypto.el
>
> files refer to "gpg" in the source with lines like
>
> params.crypto.gpgpath = notmuch_config_get_crypto_gpg_path (config);
> notmuch_config_set_crypto_gpg_path (config, "gpg");
> gpgctx = g_mime_gpg_context_new (NULL, crypto->gpgpath ? crypto->gpgpath 
> : "gpg")

There is code involved with configuring gmime-2.6, which nonetheless
does not involve calling gpg itself.  As for notmuch-crypto.el, yes it's
true that the emacs client sometimes does some stuff directly with gpg,
but that has nothing to do with gmime.

d
___
notmuch mailing list
notmuch@notmuchmail.org
https://notmuchmail.org/mailman/listinfo/notmuch


Re: [BUG] gmime-3.0.1 (was: [PATCH] crypto: gracefully handle gmime errors)

2017-09-05 Thread Jan Malakhovski
Servilio Afre Puentes  writes:

> On Tue, Sep 05 2017, Jan Malakhovski wrote:
>
> [...]
>> I added `gpgme` to `buildInputs` of `gmime` and now `notmuch` passes all
>> the tests. Yay! So that was the root problem.
>>
>> Is it correct to assume that when building with `gmime-3` `notmuch`
>> stops calling `gpg` binary and does all the things PGP using `gmime-3`?
>
> Yes, they use GPGME instead of a custom wrapper:
>
> https://mail.gnome.org/archives/gmime-devel-list/2017-April/msg2.html
>
> BTW, I created a merge-request to have GMime 3 in Nixpkgs:
>
> https://github.com/NixOS/nixpkgs/pull/28796

I continued this nix-specific discussion there.
___
notmuch mailing list
notmuch@notmuchmail.org
https://notmuchmail.org/mailman/listinfo/notmuch


Re: [BUG] gmime-3.0.1 (was: [PATCH] crypto: gracefully handle gmime errors)

2017-09-05 Thread Jan Malakhovski
David Bremner  writes:

>> I added `gpgme` to `buildInputs` of `gmime` and now `notmuch` passes all
>> the tests. Yay! So that was the root problem.
>>
>> Is it correct to assume that when building with `gmime-3` `notmuch`
>> stops calling `gpg` binary and does all the things PGP using `gmime-3`?
>>
>
> notmuch does not call gpg directly in either case. What changes in the
> way gmime calls gpg. In 2.6 gmime called gpg, while in 3.0 it uses gpgme.
> It sounds like your gmime-3 package is missing a dependency on gpgme.

Why then at the very least

- crypto.c
- notmuch-config.c
- emacs/notmuch-crypto.el

files refer to "gpg" in the source with lines like

params.crypto.gpgpath = notmuch_config_get_crypto_gpg_path (config);
notmuch_config_set_crypto_gpg_path (config, "gpg");
gpgctx = g_mime_gpg_context_new (NULL, crypto->gpgpath ? crypto->gpgpath : 
"gpg")
___
notmuch mailing list
notmuch@notmuchmail.org
https://notmuchmail.org/mailman/listinfo/notmuch


Re: [BUG] gmime-3.0.1 (was: [PATCH] crypto: gracefully handle gmime errors)

2017-09-05 Thread Servilio Afre Puentes
On Tue, Sep 05 2017, Jan Malakhovski wrote:

[...]
> I added `gpgme` to `buildInputs` of `gmime` and now `notmuch` passes all
> the tests. Yay! So that was the root problem.
>
> Is it correct to assume that when building with `gmime-3` `notmuch`
> stops calling `gpg` binary and does all the things PGP using `gmime-3`?

Yes, they use GPGME instead of a custom wrapper:

https://mail.gnome.org/archives/gmime-devel-list/2017-April/msg2.html

BTW, I created a merge-request to have GMime 3 in Nixpkgs:

https://github.com/NixOS/nixpkgs/pull/28796

Servilio

-- 

Servilio Afre Puentes
___
notmuch mailing list
notmuch@notmuchmail.org
https://notmuchmail.org/mailman/listinfo/notmuch


Re: [BUG] gmime-3.0.1 (was: [PATCH] crypto: gracefully handle gmime errors)

2017-09-05 Thread David Bremner
Jan Malakhovski  writes:

> I added `gpgme` to `buildInputs` of `gmime` and now `notmuch` passes all
> the tests. Yay! So that was the root problem.
>
> Is it correct to assume that when building with `gmime-3` `notmuch`
> stops calling `gpg` binary and does all the things PGP using `gmime-3`?
>

notmuch does not call gpg directly in either case. What changes in the
way gmime calls gpg. In 2.6 gmime called gpg, while in 3.0 it uses gpgme.
It sounds like your gmime-3 package is missing a dependency on gpgme.

d
___
notmuch mailing list
notmuch@notmuchmail.org
https://notmuchmail.org/mailman/listinfo/notmuch


Re: [BUG] gmime-3.0.1 (was: [PATCH] crypto: gracefully handle gmime errors)

2017-09-05 Thread Jan Malakhovski
Hi.

David Bremner  writes:

> I'm fairly certain this something nix specific. 3.0.1 is the
> default version of gmime I develop against these days.
>
>> patching sources
>
> What patches, if any are applied here?

None.

>> T350-crypto: Testing PGP/MIME signature verification and decryption
>>  PASS   emacs delivery of signed message
>>  FAIL   signature verification
>>  --- T350-crypto.2.expected  2017-08-31 14:25:03.126885225 +
>>  +++ T350-crypto.2.output2017-08-31 14:25:03.126885225 +
>>  @@ -18,13 +18,7 @@
>>   ], 
>>   "content-type": "multipart/signed", 
>>   "id": 1, 
>>  -"sigstatus": [
>>  -{
>>  -"created": 946728000, 
>>  -"fingerprint": 
>> "5AEAB11F5E33DCE875DDB75B6D92612D94E46381", 
>>  -"status": "good"
>>  -}
>>  -]
>>  +"sigstatus": []
>>   }
>>   ], 
>>   "date_relative": "2000-01-01", 
>> Failed to verify signed part: Cannot verify multipart/signed part: 
>> unregistered signature protocol 'application/pgp-signature'.
>
> It seems like your gmime install doesn't understand PGP/MIME. That's
> pretty strange since afaik it enables SMIME and PGP/MIME with the same flag.
>
> Previously you wrote
> ,
> |I wonder why gnupg stops getting referenced with gmime-3.0.1. My guess
> |is that `./configure` does something very different when compiling with
> |gmime-3.
> `
>
> Although I don't think that configure is really the problem, the missing
> dependence on gnupg is suspicious.  Not having a gpg binary at all
> should cause more failures and/or messages about skipping. It's hard for
> me to test because on Debian there is a hard dependency of gmime-3.0 on
> gnupg.

I added `gpgme` to `buildInputs` of `gmime` and now `notmuch` passes all
the tests. Yay! So that was the root problem.

Is it correct to assume that when building with `gmime-3` `notmuch`
stops calling `gpg` binary and does all the things PGP using `gmime-3`?

It's the only explanation I have for why `notmuch` package stops
directly referencing `gpg` even when the sources get patched with
's/gpg/${pkgs.gpg}/bin/gpg/g' (not exactly, but close enough).

Cheers,
  Jan
___
notmuch mailing list
notmuch@notmuchmail.org
https://notmuchmail.org/mailman/listinfo/notmuch


Re: [BUG] gmime-3.0.1 (was: [PATCH] crypto: gracefully handle gmime errors)

2017-09-05 Thread David Bremner
Jan Malakhovski  writes:

> When building with gmime-3.0.1 `tests/T355-smime.sh` passes and messages
> in my inbox get parsed ok, but a lot of other tests break.
>
> Both on 0.25 tag and HEAD get. See attached build log.
>
> building path(s) ‘/nix/store/x7dql3l36nrs84wmzc3jnma71rgdfdfb-notmuch-0.25’
> unpacking sources
> unpacking source archive 
> /nix/store/w1kbvfgbi5sz6fp8vwn888yckiwwd24d-notmuch-46bda29
> source root is notmuch-46bda29

I'm fairly certain this something nix specific. 3.0.1 is the
default version of gmime I develop against these days.

> patching sources

What patches, if any are applied here?

> T350-crypto: Testing PGP/MIME signature verification and decryption
>  PASS   emacs delivery of signed message
>  FAIL   signature verification
>   --- T350-crypto.2.expected  2017-08-31 14:25:03.126885225 +
>   +++ T350-crypto.2.output2017-08-31 14:25:03.126885225 +
>   @@ -18,13 +18,7 @@
>], 
>"content-type": "multipart/signed", 
>"id": 1, 
>   -"sigstatus": [
>   -{
>   -"created": 946728000, 
>   -"fingerprint": 
> "5AEAB11F5E33DCE875DDB75B6D92612D94E46381", 
>   -"status": "good"
>   -}
>   -]
>   +"sigstatus": []
>}
>], 
>"date_relative": "2000-01-01", 
> Failed to verify signed part: Cannot verify multipart/signed part: 
> unregistered signature protocol 'application/pgp-signature'.

It seems like your gmime install doesn't understand PGP/MIME. That's
pretty strange since afaik it enables SMIME and PGP/MIME with the same flag.
Previously you wrote
,
|I wonder why gnupg stops getting referenced with gmime-3.0.1. My guess
|is that `./configure` does something very different when compiling with
|gmime-3.
`

Although I don't think that configure is really the problem, the missing
dependence on gnupg is suspicious.  Not having a gpg binary at all
should cause more failures and/or messages about skipping. It's hard for
me to test because on Debian there is a hard dependency of gmime-3.0 on
gnupg.
___
notmuch mailing list
notmuch@notmuchmail.org
https://notmuchmail.org/mailman/listinfo/notmuch