New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
kwallet: support GPG-encrypted wallets #23622
Conversation
@@ -9,11 +9,13 @@ let | |||
gpgProgram = if useGnupg1 then "gpg" else "gpg2"; | |||
in | |||
stdenv.mkDerivation rec { | |||
name = "gpgme-1.8.0"; | |||
name = "gpgme-1.7.1"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it'd be better to add a gpgme_1_7
package instead of downgrading the main version; there are other users of gpgme in the tree after all :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Or do you mean 1.8 is broken in general?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No, not in general, although 1.8.0 was particularly hostile to MacOS :-) — they meant to do this, which is a patch we might as well add rather than splitting gpgme_1_7 out of gpgme, and see nixpkgs workaround for another regression in 1.8.0. Both of these were fixed in gpgme master, and I believe we should better wait for 1.8.1 or 1.9.0 on 1.7.1.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
cc @Fuuzetsu as the listed gpgme maintainer
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Both of these were fixed in gpgme master, and I believe we should better wait for 1.8.1 or 1.9.0 on 1.7.1.
gpgme 1.9.0 is out (#24491) and I guess we can merge it soon (just wasn't sure about useGnupg1
change). I guess we can merge this shortly after the upgrade 😄.
@@ -30,9 +32,6 @@ stdenv.mkDerivation rec { | |||
NIX_CFLAGS_COMPILE = | |||
with stdenv; lib.optional (system == "i686-linux") "-D_FILE_OFFSET_BITS=64"; | |||
|
|||
AM_CXXFLAGS = | |||
with stdenv; lib.optional (isDarwin) "-D_POSIX_C_SOURCE=200809L"; | |||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
BTW: Why did you drop this? Should I include that change for 1.9.0? I'm actually a bit confused because this is for macOS/Darwin only and according to you PR you didn't build this on macOS - are you sure that works?
Edit: nvm, found it: https://bugs.gnupg.org/gnupg/issue2910
I'll rebase this on top of master once #24491 is merged. |
Rebased. |
Looks good to me 😄. Note (Edited): I actually verified the first 98 packages (they all succeeded). @joachifm could you please merge this if it looks ok to you as well?
That command only works as expected if you didn't already commit your changes (i.e. it works on the changes you can see with |
@primeos The kdevelop issue is due to a problem in qt, I am testing a fix then I will make a PR. |
Motivation for this change
I migrated to NixOS and could not open my KWallet wallets because they were gpg-encrypted and KWallet was not built with gpgme. (For an explanation see e.g. https://forum.kde.org/viewtopic.php?f=289&t=138507.)
KWallet compilation failed with gpgme-1.8.0 because gpgme had broken its cmake definitions in b2c07bd4, between 1.7.1 and 1.8.0, and have fixed them in 572c1aac and 2e661b9e, after 1.8.0.
Things done
(nix.useSandbox on NixOS,
or option
build-use-sandbox
innix.conf
on non-NixOS)
nix-shell -p nox --run "nox-review wip"
./result/bin/
)