aboutsummaryrefslogtreecommitdiff
path: root/nix/users/profiles/1password.nix
diff options
context:
space:
mode:
authorFranck Cuny <franck@fcuny.net>2025-07-21 07:31:45 -0700
committerFranck Cuny <franck@fcuny.net>2025-07-21 08:13:11 -0700
commit23f8df7396d35744069a4bda0d1d38a55ff64b79 (patch)
tree772b5e72355e9ee5b3ae31aef37fe1d4508e8f30 /nix/users/profiles/1password.nix
parentadd docker helpers and clean up some dependencies (diff)
downloadinfra-23f8df7396d35744069a4bda0d1d38a55ff64b79.tar.gz
refactoring to use flake-parts and automatic imports of hosts
This is the first step in a large refactoring to use flake-parts, and to automatically imports hosts based on paths.
Diffstat (limited to 'nix/users/profiles/1password.nix')
-rw-r--r--nix/users/profiles/1password.nix41
1 files changed, 41 insertions, 0 deletions
diff --git a/nix/users/profiles/1password.nix b/nix/users/profiles/1password.nix
new file mode 100644
index 0000000..63892c7
--- /dev/null
+++ b/nix/users/profiles/1password.nix
@@ -0,0 +1,41 @@
+{ pkgs, config, ... }:
+let
+ home = config.home.homeDirectory;
+ darwinSockPath = "${home}/Library/Group Containers/2BUA8C4S2C.com.1password/t/agent.sock";
+ sockPath = ".1password/agent.sock";
+in
+{
+ home.packages = with pkgs; [
+ _1password-cli
+ ];
+
+ home.sessionVariables = {
+ SSH_AUTH_SOCK = "${home}/${sockPath}";
+ };
+
+ home.file.sock = {
+ source = config.lib.file.mkOutOfStoreSymlink darwinSockPath;
+ target = sockPath;
+ };
+
+ programs.fish = {
+ interactiveShellInit = ''
+ op completion fish | source
+ '';
+ };
+
+ programs.ssh = {
+ extraConfig = "IdentityAgent ~/${sockPath}";
+ };
+
+ # Generate ssh agent config for 1Password
+ # I want both my personal and work keys
+ home.file.".config/1Password/ssh/agent.toml".text = ''
+ [[ssh-keys]]
+ account = "my.1password.com"
+
+ [[ssh-keys]]
+ account = "roblox.1password.com"
+ vault = "Private"
+ '';
+}