Nixpkgs: notmuch: build broken with gnupg 2.2.6 (18.03)

Created on 18 Apr 2018  Β·  15Comments  Β·  Source: NixOS/nixpkgs

Issue description

Recent bump of gnupg: 2.2.5 -> 2.2.6 ~in ecc5a2bc153148f7e554c45ca6d6e2d0582d1bb5 (master) and~ 31ed7ab (18.03)
broke the build of notmuch.

It still compiles but a number of test cases fail - looks like gnupg output has changed.

Upstream doesn't appear to have updated the tests yet so we will probably have to disable or patch them ourselves.

/cc maintainers @garbas @the-kenny @flokli @chaoflow

Most helpful comment

building notmuch with GMime 2 will fix this for now, bumping GMime to 3.2.0 does not.

I'll prepare a PR, and will further investigate.

All 15 comments

It seems notmuch isn't able to get the sigstatus from GMime.

I did not yet look on whether this is related to the changes documented in https://github.com/jstedfast/gmime/commit/80e7e96e26c1f0fe44b9a0237210f4d1298817c5.

https://github.com/flokli/notmuch/commit/f7dc4cf8958702d338763364281802e9487f2eaf would mark those tests as broken, but this doesn't really help if sigstatus handling in notmuch is broken…

building notmuch with GMime 2 will fix this for now, bumping GMime to 3.2.0 does not.

I'll prepare a PR, and will further investigate.

can be closed, as discussed in #39146.

Still doesn't build on 18.03. Whatever fixed it on master isn't there yet.
@Mic92 should this be reopened?

Tried to cherry-pick gpgme bump from f76c8427063 , but that alone doesn't build on 18.03.

right, 18.03 still is broken, so the description should be updated and the issue reopened.

After cherry-picking the gpgme bump (f76c842), gpgme build complains with "undefined reference to gpgrt_strdup".
Bumping libgpg-error from 1.27 to 1.28 (380171c9f6247480a31d87f04a20e96b0a1154c9 and 7a77439b03ba2b0b1967b9f9b9c556719a9a25f4) would recompile systemd, which seems to have problems with the newer libgpg-error version:

In file included from ../src/basic/alloc-util.h:28:0,
                 from ../src/journal/journal-file.c:31:
../src/basic/macro.h:423:18: error: expected β€˜)’ before β€˜__attribute__’
 #define noreturn __attribute__((noreturn))
                  ^
In file included from /nix/store/7mlwcafccy3wbw2i0s3l1gb7jad9iq06-libgcrypt-1.8.2-dev/include/gcrypt.h:30:0,
                 from ../src/journal/journal-file.h:26,
                 from ../src/journal/journal-authenticate.h:25,
                 from ../src/journal/journal-file.c:36:
/nix/store/2zcy3dxkdjf546jwn33izwp8l3wc6dzk-libgpg-error-1.28-dev/include/gpg-error.h:1544:46: error: expected β€˜,’ or β€˜;’ before β€˜)’ token
 void gpgrt_log_bug (const char *fmt, ...)    GPGRT_ATTR_NR_PRINTF(1,2);
                                              ^
In file included from ../src/basic/alloc-util.h:28:0,
                 from ../src/journal/journal-file.c:31:
../src/basic/macro.h:423:18: error: expected β€˜)’ before β€˜__attribute__’
 #define noreturn __attribute__((noreturn))
                  ^
In file included from /nix/store/7mlwcafccy3wbw2i0s3l1gb7jad9iq06-libgcrypt-1.8.2-dev/include/gcrypt.h:30:0,
                 from ../src/journal/journal-file.h:26,
                 from ../src/journal/journal-authenticate.h:25,
                 from ../src/journal/journal-file.c:36:
/nix/store/2zcy3dxkdjf546jwn33izwp8l3wc6dzk-libgpg-error-1.28-dev/include/gpg-error.h:1545:46: error: expected β€˜,’ or β€˜;’ before β€˜)’ token
 void gpgrt_log_fatal (const char *fmt, ...)  GPGRT_ATTR_NR_PRINTF(1,2);
                                              ^
In file included from ../src/basic/alloc-util.h:28:0,
                 from ../src/journal/journal-file.c:31:
../src/basic/macro.h:423:18: error: expected β€˜)’ before β€˜__attribute__’
 #define noreturn __attribute__((noreturn))
                  ^
In file included from /nix/store/7mlwcafccy3wbw2i0s3l1gb7jad9iq06-libgcrypt-1.8.2-dev/include/gcrypt.h:30:0,
                 from ../src/journal/journal-file.h:26,
                 from ../src/journal/journal-authenticate.h:25,
                 from ../src/journal/journal-file.c:36:
/nix/store/2zcy3dxkdjf546jwn33izwp8l3wc6dzk-libgpg-error-1.28-dev/include/gpg-error.h:1557:43: error: expected β€˜,’ or β€˜;’ before β€˜)’ token
                         const char *func) GPGRT_ATTR_NORETURN;
                                           ^
ninja: build stopped: subcommand failed.

Didn't yet search for the patch fixing that on master.

18.03 uses systemd 237 (master: 238). Anyway, making a change that rebuilds systemd to fix notmuch sounds a little scary on a stable release. Maybe there's another way to fix this...

@xeji we sure can simply override gpgme and libgpg-error for notmuch, but not sure if maintaining multiple versions is more work than just bumping what's needed.

https://github.com/systemd/systemd/commit/848e863acc51ecfb0f3955c498874588201d9130 fixes the systemd build - I cherry-picked everything needed and filed PR #39369.

notmuch 0.26.1 builds now on staging-18.03. Keeping the issue open until the fixes are merged to release-18.03.

The fixes are now in release-18.03.

I am still having this issue

@dkudriavtsev Could you elaborate on that? This issue is quite old, gnupg had a lot of updates since then. Which channel are you using? Which build failures are you seeing?

Unstable channel. The tests were failing during build. The next day, the
package was available on the binary cache and I stopped seeing this issue.

On Thu, Dec 13, 2018, 3:59 AM Justin Humm notifications@github.com wrote:

@dkudriavtsev https://github.com/dkudriavtsev Could you elaborate on
that? This issue is quite old, gnupg had a lot of updates since then. Which
channel are you using? Which build failures are you seeing?

β€”
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/NixOS/nixpkgs/issues/39124#issuecomment-446943732,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AJVlNPgV5RRilJaCQ3BPENtINyrGnDz5ks5u4kEGgaJpZM4TavyQ
.

So https://github.com/NixOS/nixpkgs/issues/51822 would have been the more appropriate issue.

Anyhow, good it's fixed for you too :-)

I found this on Google as the first result and the errors seemed similar.

On Fri, Dec 14, 2018, 1:54 AM Florian Klink notifications@github.com
wrote:

So #51822 https://github.com/NixOS/nixpkgs/issues/51822 would have been
the more appropriate issue.

Anyhow, good it's fixed for you too :-)

β€”
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/NixOS/nixpkgs/issues/39124#issuecomment-447274232,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AJVlNF35mFlNnvLo2BVTH_QlKYhrRcp7ks5u43VlgaJpZM4TavyQ
.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

ayyess picture ayyess  Β·  3Comments

chris-martin picture chris-martin  Β·  3Comments

langston-barrett picture langston-barrett  Β·  3Comments

teto picture teto  Β·  3Comments

sid-kap picture sid-kap  Β·  3Comments