From abc7dcd3826b263c6e6a095d82f89920c5de28e9 Mon Sep 17 00:00:00 2001 From: cnst Date: Sun, 25 Aug 2024 20:21:01 +0200 Subject: [PATCH] toothpick sops --- .sops.yaml | 4 +-- .../nixvim/plugins/{ai.nix => copilot.nix} | 33 ++++++++----------- .../devtools/nixvim/plugins/default.nix | 4 +-- home/users/adam/modules.nix | 2 +- home/users/cnst/modules.nix | 2 +- home/users/toothpick/modules.nix | 12 +++---- hosts/default.nix | 1 - secrets/toothpc-secrets.yaml | 7 ++-- ...k-sercrets.yaml => toothpick-secrets.yaml} | 5 ++- 9 files changed, 31 insertions(+), 39 deletions(-) rename home/modules/devtools/nixvim/plugins/{ai.nix => copilot.nix} (61%) rename secrets/{toothpick-sercrets.yaml => toothpick-secrets.yaml} (75%) diff --git a/.sops.yaml b/.sops.yaml index 649ff631..93936874 100644 --- a/.sops.yaml +++ b/.sops.yaml @@ -2,11 +2,11 @@ keys: # Users - &cnst age1aj6tdyjcxjc3fqda3uvnzy6m49yj4ankvzdstnj3w9dr8hmsccts5vsgd8 - &adam placeholderkey - - &toothpick placeholderkey + - &toothpick age1x6zshjaxnjt76pwqspulc9pqp33lsytwvvwvx6ukqlh7xjqv4p3qcqzlyx # Hosts - &cnix age1rzee3wxh7773p7ytaq3zcl8q4tpsz3l43rdv2wezetgk0dlz0vws9jcpu2 - &adampad placeholderkey - - &toothpc placeholderkey + - &toothpc age1un3d9mnxack229gycahuuw0lngjutfwtc4pned9as085mtynm5nqyyxaak creation_rules: - path_regex: secrets/cnix-secrets.(yaml|json|env|ini)$ key_groups: diff --git a/home/modules/devtools/nixvim/plugins/ai.nix b/home/modules/devtools/nixvim/plugins/copilot.nix similarity index 61% rename from home/modules/devtools/nixvim/plugins/ai.nix rename to home/modules/devtools/nixvim/plugins/copilot.nix index 60848b92..04c33987 100644 --- a/home/modules/devtools/nixvim/plugins/ai.nix +++ b/home/modules/devtools/nixvim/plugins/copilot.nix @@ -4,23 +4,18 @@ ... }: let inherit (lib) mkEnableOption mkIf; - cfg = config.modules.devtools.nixvim.plugins.ai; + cfg = config.modules.devtools.nixvim.plugins.copilot; in { options = { - modules.devtools.nixvim.plugins.ai.enable = mkEnableOption "Enables AI tools for nixvim"; + modules.devtools.nixvim.plugins.copilot.enable = mkEnableOption "Enables AI tools for nixvim"; }; config = mkIf cfg.enable { programs.nixvim = { plugins = { - chatgpt = { + copilot-chat = { enable = true; - settings = { - api_key_cmd = "cat ${config.sops.secrets.openai_api_key.path}"; - }; }; - copilot-chat.enable = true; - copilot-lua = { enable = true; suggestion = { @@ -28,10 +23,20 @@ in { autoTrigger = true; keymap.accept = ""; }; - panel.enabled = false; + panel.enabled = true; }; }; keymaps = [ + { + action = "lua local input = vim.fn.input('Quick Chat: '); if input ~= '' then require('CopilotChat').ask(input, { selection = require('CopilotChat.select').buffer }) end"; + key = "qc"; + options = { + desc = "CopilotChat - Quick chat"; + }; + mode = [ + "n" + ]; + } { action = "CopilotChatToggle"; key = "ac"; @@ -42,16 +47,6 @@ in { "n" ]; } - { - action = "ChatGPT"; - key = "ag"; - options = { - desc = "Toggle ChatGPT"; - }; - mode = [ - "n" - ]; - } ]; }; }; diff --git a/home/modules/devtools/nixvim/plugins/default.nix b/home/modules/devtools/nixvim/plugins/default.nix index c9eface7..e32e1a44 100644 --- a/home/modules/devtools/nixvim/plugins/default.nix +++ b/home/modules/devtools/nixvim/plugins/default.nix @@ -1,9 +1,9 @@ {userModules, ...}: { imports = [ - "${userModules}/devtools/nixvim/plugins/ai.nix" "${userModules}/devtools/nixvim/plugins/barbar.nix" "${userModules}/devtools/nixvim/plugins/comment.nix" "${userModules}/devtools/nixvim/plugins/conform.nix" + "${userModules}/devtools/nixvim/plugins/copilot.nix" "${userModules}/devtools/nixvim/plugins/efm.nix" "${userModules}/devtools/nixvim/plugins/floaterm.nix" "${userModules}/devtools/nixvim/plugins/harpoon.nix" @@ -12,12 +12,12 @@ "${userModules}/devtools/nixvim/plugins/markdown-preview.nix" "${userModules}/devtools/nixvim/plugins/neo-tree.nix" "${userModules}/devtools/nixvim/plugins/nonels.nix" + "${userModules}/devtools/nixvim/plugins/rustaceanvim.nix" "${userModules}/devtools/nixvim/plugins/startify.nix" "${userModules}/devtools/nixvim/plugins/tagbar.nix" "${userModules}/devtools/nixvim/plugins/telescope.nix" "${userModules}/devtools/nixvim/plugins/treesitter.nix" "${userModules}/devtools/nixvim/plugins/vimtex.nix" "${userModules}/devtools/nixvim/plugins/yanky.nix" - "${userModules}/devtools/nixvim/plugins/rustaceanvim.nix" ]; } diff --git a/home/users/adam/modules.nix b/home/users/adam/modules.nix index ccd9e22c..0aa664e7 100644 --- a/home/users/adam/modules.nix +++ b/home/users/adam/modules.nix @@ -11,10 +11,10 @@ nixvim = { enable = true; plugins = { - ai.enable = false; barbar.enable = true; comment.enable = true; conform-nvim.enable = true; + copilot.enable = false; efm.enable = true; floaterm.enable = false; harpoon.enable = false; diff --git a/home/users/cnst/modules.nix b/home/users/cnst/modules.nix index ea4d172c..bb8826d2 100644 --- a/home/users/cnst/modules.nix +++ b/home/users/cnst/modules.nix @@ -11,10 +11,10 @@ nixvim = { enable = true; plugins = { - ai.enable = true; barbar.enable = true; comment.enable = true; conform-nvim.enable = true; + copilot.enable = true; efm.enable = true; floaterm.enable = false; harpoon.enable = false; diff --git a/home/users/toothpick/modules.nix b/home/users/toothpick/modules.nix index 467220db..729e7932 100644 --- a/home/users/toothpick/modules.nix +++ b/home/users/toothpick/modules.nix @@ -11,25 +11,25 @@ nixvim = { enable = true; plugins = { - ai.enable = false; barbar.enable = true; comment.enable = true; conform-nvim.enable = true; + copilot.enable = false; efm.enable = true; + floaterm.enable = false; + harpoon.enable = false; + lsp.enable = true; lualine.enable = true; markdown-preview.enable = true; neo-tree.enable = true; none-ls.enable = true; + rustaceanvim.enable = true; startify.enable = true; + tagbar.enable = false; telescope.enable = true; treesitter.enable = true; - floaterm.enable = false; - harpoon.enable = false; - tagbar.enable = false; vimtex.enable = false; yanky.enable = false; - rustaceanvim.enable = true; - lsp.enable = true; }; }; vscode.enable = true; diff --git a/hosts/default.nix b/hosts/default.nix index 75a4c09f..a7494a0d 100644 --- a/hosts/default.nix +++ b/hosts/default.nix @@ -80,7 +80,6 @@ extraSpecialArgs = specialArgs; }; } - inputs.chaotic.nixosModules.default inputs.sops-nix.nixosModules.sops ]; diff --git a/secrets/toothpc-secrets.yaml b/secrets/toothpc-secrets.yaml index 097f0c99..4a085a1a 100644 --- a/secrets/toothpc-secrets.yaml +++ b/secrets/toothpc-secrets.yaml @@ -1,5 +1,4 @@ -openai_api_key: ENC[AES256_GCM,data:91O7UcISvIJ6fzZxxj6y/6T7KT04tu4dIsWfVgdqt9/JzplA734lTIixRNmYSxmhgVNCyX2pJn0WO1yH7uEsSj2CHyJxVGAL6h+7zqYFo/UxbXAWy9u1hSfAS0BL6WEXrlVzqdt9JGz0lBTK4qFyuXnnSzhPVG2qQGhenmEq1+UkqdY9,iv:rfyekHDh8UUvbcXgPsfsKA6AjO2z5XSGpeHpwpiuSXw=,tag:dHZhfWoO/e4ZUfSAEOxq0A==,type:str] -ssh_user: ENC[AES256_GCM,data:u6YjlfDAX1zEO5Zd6SYn3C3q/H8knUwMT8Xv4d0YbYnVrainntukSKwO5jwUMay+BfgkWfRBil0/mqxBZjS1E+we3iDxYHTLLWXjQ2QJTzrVJHpu1MFcvYPfjQsocS96i6V8N/eH2fNIjSmys4uBxrLlnlsA3nuC4kvk/6rAq7ndp27eyQH/rx7iorMvyMtfRcKTOSCQNlaHu2WLtH6rxcUg8c+zYhlPR1OkM6I7tWrrw/48Bj7USjdXyNXM18qX05/EetkZdM6vHDWWPYTfVEnoP3K8zjgWXwoX/3amNgvX2wQYS8eSGxdLA5hCvKi1ytl3aEr+QjYn3X+qkqtdk6cvMnx6nyotMWpoJdnaRQqarB3gh0kHWCRjs0ALsWyvn7ShUXYOT3fflX1lXiEjpQp5TbvR+EpB4gicpa60j9s13u43znMqYqnlnGvTGoBXbkz6ZE6EcKXyPq9RuNWyK6X/j3kvAyiemoBkJg4rEURnG2bq9oMMvlZtbp1wkSIAwOPJjuAxOyn7LaQTEaBc,iv:u4AOkMRsT7laSfdYxXSa6LxCmDN2cA1ZBGZMRW/k9A0=,tag:s3r5cNHz02cpXdUrSL1jeQ==,type:str] +ssh_host: ENC[AES256_GCM,data:j38HDBp0jajrXgz2Wb2C6FmqYlT4L1/bLRDAjfvxLWaO4dQmrzihw8rFZ/LmEzRSJ6RDb+Jvfu8EFR6Fz3tJVpb0BcoWNZFqeVsbOpW8K40QOKed6cK4UdemPQk2gvFbw65ProGtjqeqcUaqgJ2kacM/pAhpELFkPjtJjs39fklXAj5bOb802bdzPuFzDCGtb+cw7DU99R9PARQVMzlY8+KiG0MHeDj71Yx8vhr/t/tngMdEaeiSg2UuiVnCjBJ07EXF8EEA5NNXkGErg2m34iiaa6AuPnrYK15EQdeB/fllt3KXxih1Y9VRswP5Wbson9IdxVCXiXmeryFAbNfRiOD8AYAQrHyvxz5VFL6sN+dOIhnLt9Nc84x5Qw6+S3U0mTAe3YL3nsKO+h39Stn5DQxSRS+1SPp8RfGBh1l/s0HBBR8s1ltME576UfGu+4KNzbPb6J9qwR/YHEr3MDFIoZptlcLAEzvlBNeFGFY58IebTUiw7HqeBAgYOHsH3bRp8rmsEuM5a+537AKhxoFC,iv:gHvgfTBjpQxSGXgwCf6Vrt6eNUJiXmbUvaHk5fMOC7U=,tag:/t+Yi9AC7qgwjzlw+QMhww==,type:str] sops: kms: [] gcp_kms: [] @@ -24,8 +23,8 @@ sops: VllLc2hqS1VhN3pQSm9FSFdOSmtpdE0KeMUGzVs1xRcOQfdVFQ6d2it8/iOkKNct 5ItiKjBqsrF3U/gPbXmOcPgxm6/Es+O0h8QQ0+JGYU8hNj/+0cRDrg== -----END AGE ENCRYPTED FILE----- - lastmodified: "2024-08-08T16:21:45Z" - mac: ENC[AES256_GCM,data:HZIfU0PQvr/572g+LhdYWmyO5SBUy0xzK5UcwM1PdKt9xYrcy6vC9Sk9VePR2p9f1rZFdw6B5Y2V/O3DG/L5Ct3xV0jHITgOLWjAFyITAxWV8X7FA8SRW4eusv3wuzFT8fTEXvXf8Y4wGozVrWJJIPMwIHOBzBGhM53YkMYEiXQ=,iv:6kkhKvPCewdSadQNd//hDOH0mY66XGkQSZ0KRgz24j8=,tag:Xpu6cTmi1Kvz5FimULzP7A==,type:str] + lastmodified: "2024-08-25T18:19:18Z" + mac: ENC[AES256_GCM,data:HMDybe9oiYF2efettIpjssXTNTQTWD9TZsYIVd4OMZwf5f+lZBQHMF0PoUtH6MojBncP5We4DwBrhvlcSaEz1OJHT1t+2UPm6VYjshbuf+Ajst+lI0c7zsk7WiB9K7aPbhQAvnc55144n+EdNx3iiIYmfCu4SCjjNhz33mzlfJM=,iv:yZIqHtnbIHz0AFdQtvJuCb3XnsBGP6eigH39JNM5DiI=,tag:DkfLKJ+pbGPe8AlR6oVqWw==,type:str] pgp: [] unencrypted_suffix: _unencrypted version: 3.9.0 diff --git a/secrets/toothpick-sercrets.yaml b/secrets/toothpick-secrets.yaml similarity index 75% rename from secrets/toothpick-sercrets.yaml rename to secrets/toothpick-secrets.yaml index 097f0c99..abc86173 100644 --- a/secrets/toothpick-sercrets.yaml +++ b/secrets/toothpick-secrets.yaml @@ -1,4 +1,3 @@ -openai_api_key: ENC[AES256_GCM,data:91O7UcISvIJ6fzZxxj6y/6T7KT04tu4dIsWfVgdqt9/JzplA734lTIixRNmYSxmhgVNCyX2pJn0WO1yH7uEsSj2CHyJxVGAL6h+7zqYFo/UxbXAWy9u1hSfAS0BL6WEXrlVzqdt9JGz0lBTK4qFyuXnnSzhPVG2qQGhenmEq1+UkqdY9,iv:rfyekHDh8UUvbcXgPsfsKA6AjO2z5XSGpeHpwpiuSXw=,tag:dHZhfWoO/e4ZUfSAEOxq0A==,type:str] ssh_user: ENC[AES256_GCM,data:u6YjlfDAX1zEO5Zd6SYn3C3q/H8knUwMT8Xv4d0YbYnVrainntukSKwO5jwUMay+BfgkWfRBil0/mqxBZjS1E+we3iDxYHTLLWXjQ2QJTzrVJHpu1MFcvYPfjQsocS96i6V8N/eH2fNIjSmys4uBxrLlnlsA3nuC4kvk/6rAq7ndp27eyQH/rx7iorMvyMtfRcKTOSCQNlaHu2WLtH6rxcUg8c+zYhlPR1OkM6I7tWrrw/48Bj7USjdXyNXM18qX05/EetkZdM6vHDWWPYTfVEnoP3K8zjgWXwoX/3amNgvX2wQYS8eSGxdLA5hCvKi1ytl3aEr+QjYn3X+qkqtdk6cvMnx6nyotMWpoJdnaRQqarB3gh0kHWCRjs0ALsWyvn7ShUXYOT3fflX1lXiEjpQp5TbvR+EpB4gicpa60j9s13u43znMqYqnlnGvTGoBXbkz6ZE6EcKXyPq9RuNWyK6X/j3kvAyiemoBkJg4rEURnG2bq9oMMvlZtbp1wkSIAwOPJjuAxOyn7LaQTEaBc,iv:u4AOkMRsT7laSfdYxXSa6LxCmDN2cA1ZBGZMRW/k9A0=,tag:s3r5cNHz02cpXdUrSL1jeQ==,type:str] sops: kms: [] @@ -24,8 +23,8 @@ sops: VllLc2hqS1VhN3pQSm9FSFdOSmtpdE0KeMUGzVs1xRcOQfdVFQ6d2it8/iOkKNct 5ItiKjBqsrF3U/gPbXmOcPgxm6/Es+O0h8QQ0+JGYU8hNj/+0cRDrg== -----END AGE ENCRYPTED FILE----- - lastmodified: "2024-08-08T16:21:45Z" - mac: ENC[AES256_GCM,data:HZIfU0PQvr/572g+LhdYWmyO5SBUy0xzK5UcwM1PdKt9xYrcy6vC9Sk9VePR2p9f1rZFdw6B5Y2V/O3DG/L5Ct3xV0jHITgOLWjAFyITAxWV8X7FA8SRW4eusv3wuzFT8fTEXvXf8Y4wGozVrWJJIPMwIHOBzBGhM53YkMYEiXQ=,iv:6kkhKvPCewdSadQNd//hDOH0mY66XGkQSZ0KRgz24j8=,tag:Xpu6cTmi1Kvz5FimULzP7A==,type:str] + lastmodified: "2024-08-25T18:20:06Z" + mac: ENC[AES256_GCM,data:/pRqY9QwAewkXbfuca3dJd6Jnd4EUujbUmgbSaBimx9T6tv1RcO/IJHJg7JhOOAJIHnsEmGL+rrsA4v9DDPOtTMmvAjQ6vYIU5fKT4ig9aNzv23p+QZmEq7mjS2q9AKstRi/ZAbzh0U1uM+nl0C3FS827TQ0XoD9P/wI+GwClGw=,iv:+cjt0HFhh/VGAjQd6RuUugc6KiGV+pmlh+dx8MK8ziY=,tag:/1Bqn7knxE36jKwpdR2cYg==,type:str] pgp: [] unencrypted_suffix: _unencrypted version: 3.9.0