feat: add chrome/chromium/firefox extension for password-store

This commit is contained in:
Ryan Yin
2024-01-10 00:20:09 +08:00
parent 343ebacdcf
commit 8c9a212e64
3 changed files with 25 additions and 8 deletions

View File

@@ -5,7 +5,6 @@
- <https://github.com/gopasspw/gopass>: reimplement in go, with more features.
- Clients
- Android: <https://github.com/android-password-store/Android-Password-Store>
- Chrome: <https://github.com/browserpass/browserpass-extension>
- Firefox: <https://github.com/passff/passff#readme>
- Brosers(Chrome/Firefox): <https://github.com/browserpass/browserpass-extension>
TODO

View File

@@ -1,4 +1,9 @@
{pkgs, config, lib, ...}: {
{
pkgs,
config,
lib,
...
}: {
programs.password-store = {
enable = true;
package = pkgs.pass.withExtensions (exts: [
@@ -12,15 +17,15 @@
# See the “Environment variables” section of pass(1) and the extension man pages for more information about the available keys.
settings = {
PASSWORD_STORE_DIR = "${config.xdg.dataHome}/password-store";
# Overrides the default gpg key identification set by init.
# Overrides the default gpg key identification set by init.
# Hexadecimal key signature is recommended.
# Multiple keys may be specified separated by spaces.
PASSWORD_STORE_KEY = lib.strings.concatStringsSep " " [
"62526A4A0CF43E33" # E - Ryan Yin (Personal) <ryan4yin@linux.com>
"62526A4A0CF43E33" # E - Ryan Yin (Personal) <ryan4yin@linux.com>
];
# all .gpg-id files and non-system extension files must be signed using a detached signature using the GPG key specified by
# the full 40 character upper-case fingerprint in this variable.
# If multiple fingerprints are specified, each separated by a whitespace character, then signatures must match at least one.
# If multiple fingerprints are specified, each separated by a whitespace character, then signatures must match at least one.
# The init command will keep signatures of .gpg-id files up to date.
PASSWORD_STORE_SIGNING_KEY = lib.strings.concatStringsSep " " [
"433A66D63805BD1A" # S - Ryan Yin (Personal) <ryan4yin@linux.com>
@@ -30,4 +35,16 @@
PASSWORD_STORE_ENABLE_EXTENSIONS = "true";
};
};
# password-store extensions for browsers
# you need to install the browser extension for this to work
# https://github.com/browserpass/browserpass-extension
programs.browserpass = {
enable = true;
browsers = [
"chrome"
"chromium"
"firefox"
];
};
}

View File

@@ -1,6 +1,7 @@
# Secrets Management
> For Website/App's passwords, see [/home/base/desktop/password-store](/home/base/desktop/password-store/README.md) for more details.
All my secrets are safely encrypted via agenix, and stored in a separate private GitHub repository and referenced as a flake input in this flake.
In this way, all secrets is still encrypted when transmitted over the network and written to `/nix/store`,