-
Notifications
You must be signed in to change notification settings - Fork 0
Prefer sequoia-sq for the option of OpenPGP implementation #849
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
Changes from all commits
8f9cf5f
ac767e3
11b7406
6689538
799ce06
016a8df
f9421e4
9c5c251
20417ce
5620773
95cf173
f967b06
e7dfe0c
091e96a
ed362ed
d6a5057
b578278
54dbe3d
8560164
84a46fa
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -44,10 +44,13 @@ | |
| gh | ||
| ghq | ||
|
|
||
| # GPG | ||
| gnupg | ||
| edge-pkgs.sequoia-sq # Alt `gpg` - nixos-24.05 does not backport recent versions and the older requires to rebuild. https://github.com/NixOS/nixpkgs/pull/331099 | ||
| edge-pkgs.sequoia-chameleon-gnupg | ||
| gnupg # Also keep original GPG for now. sequoia-chameleon-gnupg does not support some crucial toolset. etc: `gpg --edit-key`, `gpgconf` | ||
|
|
||
| pass | ||
| # Alt `pass` for password-store. Candidates: gopass, prs | ||
| gopass # They will respect pass comaptibility: https://github.com/gopasspw/gopass/issues/1365#issuecomment-719655627 | ||
|
Owner
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. And #853 (comment) |
||
| # Do not use ripasso-cursive for now. It only provides TUI, not a replacement of CLI. And currently unstable on my NixOS. | ||
|
|
||
| # Do not specify vim and the plugins at here, it made collisions from home-manager vim module. | ||
| # See following issues | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,6 +1,25 @@ | ||
| { config, pkgs, ... }: | ||
| { | ||
| config, | ||
| pkgs, | ||
| edge-pkgs, | ||
| ... | ||
| }: | ||
|
|
||
| # ## FAQ - GPG | ||
| # # FAQ | ||
| # | ||
| # ## sequoia-sq and gpg | ||
| # | ||
| # See GH-830 | ||
| # | ||
| # If you faced to decrypt error with gpg-sq, check it with `sq decrypt`. It displays error details. | ||
| # For example, `1: AEAD Encrypted Data Packet v1 is not considered secure` | ||
| # This is caused by encrypted non configured gpg for the AEAD. Disable it with showpref/setpref if you still use gpg. | ||
|
Owner
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This operation is cannot be done with gpg-sq, because of --edit-key is not yet implemented https://gitlab.com/sequoia-pgp/sequoia-chameleon-gnupg/-/issues/92 |
||
| # | ||
| # ## sequoia-sq | ||
| # | ||
| # TODO: <UPDATE ME> | ||
| # | ||
| # ## GPG | ||
| # | ||
| # - How to list keys? | ||
| # - 1. `gpg --list-secret-keys --keyid-format=long` # The `sec` first section displays same text as `pub` by `gpg --list-keys --keyid-format=long` | ||
|
|
@@ -23,6 +42,9 @@ let | |
| day = 60 * 60 * 24; | ||
| in | ||
| { | ||
| # Don't set $SEQUOIA_HOME, it unified config and data, cache to one directory as same as gpg era. | ||
| # Use default $HOME instead, it respects XDG Base Directory Specification | ||
|
|
||
| # https://github.com/nix-community/home-manager/blob/release-24.05/modules/services/gpg-agent.nix | ||
| services.gpg-agent = { | ||
| enable = pkgs.stdenv.isLinux; | ||
|
|
@@ -41,16 +63,23 @@ in | |
| enableSshSupport = false; | ||
| }; | ||
|
|
||
| # https://github.com/nix-community/home-manager/blob/release-24.05/modules/programs/gpg.nix | ||
| home.sessionVariables = { | ||
| GOPASS_GPG_BINARY = "${pkgs.lib.getBin edge-pkgs.sequoia-chameleon-gnupg}/bin/gpg-sq"; | ||
| }; | ||
|
|
||
| # https://github.com/nix-community/home-manager/blob/release-24.05/modules/programs/gpg.nix | ||
| programs.gpg = { | ||
| enable = true; | ||
| # package = edge-pkgs.sequoia-chameleon-gnupg; # Also will be respected in gpg-agent: https://github.com/nix-community/home-manager/blob/5171f5ef654425e09d9c2100f856d887da595437/modules/services/gpg-agent.nix#L8C3-L8C9 | ||
| # However I prefer original gnupg for now, sequoia-chameleon-gnupg does not support crucial features for GPG toolset (etc. `gpg --edit-key`, `gpgconf`) | ||
|
|
||
| # Preferring XDG_DATA_HOME rather than XDG_CONFIG_HOME from following examples | ||
| # - https://wiki.archlinux.org/title/XDG_Base_Directory | ||
| # - https://github.com/nix-community/home-manager/blob/5171f5ef654425e09d9c2100f856d887da595437/modules/programs/gpg.nix#L192 | ||
| homedir = "${config.xdg.dataHome}/gnupg"; | ||
|
|
||
| # Used for `gpg.conf`. I don't know how to specify `gpgconf` with this. | ||
| # TODO: Set gpg binary as sequoia-chameleon-gnupg. AFAIK I don't actually need it for now, because I'm not using dependent tools. However it is ideal config. | ||
| # - How to read `--list-keys` - https://unix.stackexchange.com/questions/613839/help-understanding-gpg-list-keys-output | ||
| # - Ed448 in GitHub is not yet supported - https://github.com/orgs/community/discussions/45937 | ||
| settings = { | ||
|
|
@@ -64,5 +93,6 @@ in | |
| # https://github.com/nix-community/home-manager/blob/release-24.05/modules/programs/password-store.nix | ||
| programs.password-store = { | ||
| enable = true; | ||
| package = pkgs.gopass; # Setting package is not a aliasing command, however I would try this for now. https://github.com/gopasspw/gopass/blob/70c56f9102999661b54e28c28fa2d63fa5fc813b/docs/setup.md?plain=1#L292-L298 | ||
| }; | ||
| } | ||
Uh oh!
There was an error while loading. Please reload this page.
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.
For context of replacing gpg, I need https://gitlab.com/sequoia-pgp/sequoia-chameleon-gnupg.
Latest stable is NixOS/nixpkgs#349002, but I don't need to wait the binary cache. I guess I can implement settings with older version.
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.
Updated commit has been merged in 95cf173