diff --git a/.gitignore b/.gitignore index e256ccc..40b013a 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,6 @@ -result -result/ secrets/yubikey-identity.txt # Avoid leaking ssh keys **/id_ed25519 **/id_rsa +.aider* diff --git a/hosts/work/ssh.nix b/hosts/work/ssh.nix index e419164..fe7e64e 100644 --- a/hosts/work/ssh.nix +++ b/hosts/work/ssh.nix @@ -16,4 +16,4 @@ proxyJump = "bastion.ao"; }; }; -} \ No newline at end of file +} diff --git a/modules/desktop/gtk/default.nix b/modules/desktop/gtk/default.nix index 3bde0fb..4e7aa5f 100644 --- a/modules/desktop/gtk/default.nix +++ b/modules/desktop/gtk/default.nix @@ -3,7 +3,7 @@ nautilus gnome-photos ]; - + services.gvfs.enable = true; programs.dconf.enable = true; diff --git a/modules/shell.nix b/modules/shell.nix index 8922e37..1d53834 100644 --- a/modules/shell.nix +++ b/modules/shell.nix @@ -6,5 +6,7 @@ ./shell/comma.nix ./shell/neovim.nix ./shell/zellij.nix + ./shell/zoxide.nix + ./shell/aider.nix ]; } diff --git a/modules/shell/aider.nix b/modules/shell/aider.nix new file mode 100644 index 0000000..8603e6e --- /dev/null +++ b/modules/shell/aider.nix @@ -0,0 +1,25 @@ +{ + pkgsUnstable, + username, + config, + ... +}: { + age.secrets.llm-api-key = { + rekeyFile = ../../secrets/llm-api-key.env.age; + mode = "0600"; + owner = username; + }; + + environment.systemPackages = with pkgsUnstable; [ + aider-chat + ]; + fireproof.home-manager = { + home.file.".aider.conf.yml".text = '' + # Aider configuration file + # This file is used to configure the Aider chat client + # It is a YAML file + sonnet: true + env-file: ${config.age.secrets.llm-api-key.path} + ''; + }; +} diff --git a/modules/shell/fish/autocomplete.fish b/modules/shell/fish/autocomplete.fish index 7ba3475..e4b1ddd 100644 --- a/modules/shell/fish/autocomplete.fish +++ b/modules/shell/fish/autocomplete.fish @@ -1,4 +1,4 @@ # ds autocomplete (if its installed) if type -q ds - _DS_COMPLETE=fish_source ds | source; -end; \ No newline at end of file + _DS_COMPLETE=fish_source ds | source +end diff --git a/modules/shell/zoxide.nix b/modules/shell/zoxide.nix new file mode 100644 index 0000000..175a4ad --- /dev/null +++ b/modules/shell/zoxide.nix @@ -0,0 +1,5 @@ +_: { + fireproof.home-manager.programs.zoxide = { + enable = true; + }; +} diff --git a/secrets/hosts/bootstrap/.rekey/5b9b59da13a1f654ab32cea0102501eb-llm-api-key.age b/secrets/hosts/bootstrap/.rekey/5b9b59da13a1f654ab32cea0102501eb-llm-api-key.age new file mode 100644 index 0000000..f6aa0dc Binary files /dev/null and b/secrets/hosts/bootstrap/.rekey/5b9b59da13a1f654ab32cea0102501eb-llm-api-key.age differ diff --git a/secrets/hosts/desktop/.rekey/a450ddae3b7c469613cb81ec6a868a96-llm-api-key.age b/secrets/hosts/desktop/.rekey/a450ddae3b7c469613cb81ec6a868a96-llm-api-key.age new file mode 100644 index 0000000..c0ba5ad --- /dev/null +++ b/secrets/hosts/desktop/.rekey/a450ddae3b7c469613cb81ec6a868a96-llm-api-key.age @@ -0,0 +1,8 @@ +age-encryption.org/v1 +-> ssh-ed25519 UqEUow ZTWzzn7Ra3xjMUJkRm+lK+HMdqxCM1XiDneKWk6IoUY +7HIwLVhsJftGWMjhCQddz/MMqnpv7UoR1QzEXUfqVqo +-> ;7rhkFK-grease +2fBbpwA7 +--- Dj4NFjzl0zb+Wxl+j2eChRWowe4PAGkag//fwnjiiAs +%ތ?Ŋ$qU1Pk%]C:ODxɭyy,[Dm NZc* p; 3R}"P8  + qUP/0X9q2 h}v!PG#O4hՂl^@^J /2K \ No newline at end of file diff --git a/secrets/hosts/laptop/.rekey/a450ddae3b7c469613cb81ec6a868a96-llm-api-key.age b/secrets/hosts/laptop/.rekey/a450ddae3b7c469613cb81ec6a868a96-llm-api-key.age new file mode 100644 index 0000000..30a5415 Binary files /dev/null and b/secrets/hosts/laptop/.rekey/a450ddae3b7c469613cb81ec6a868a96-llm-api-key.age differ diff --git a/secrets/hosts/work/.rekey/d451ded3be8bc97c3af769254574e9ba-llm-api-key.age b/secrets/hosts/work/.rekey/d451ded3be8bc97c3af769254574e9ba-llm-api-key.age new file mode 100644 index 0000000..c88678b Binary files /dev/null and b/secrets/hosts/work/.rekey/d451ded3be8bc97c3af769254574e9ba-llm-api-key.age differ diff --git a/secrets/llm-api-key.env.age b/secrets/llm-api-key.env.age new file mode 100644 index 0000000..d138bdd --- /dev/null +++ b/secrets/llm-api-key.env.age @@ -0,0 +1,10 @@ +age-encryption.org/v1 +-> X25519 PkSPG1ZMXK0ArIw/8DE10dbf4bIh0539bjWzOCjDIFs +TtWsG59L7YoHVO+nl3lzDSEFFljVMMWef9QkOkZKmT4 +-> piv-p256 q3LNVw AvnoJDyUKLYCgIDWN4ey0UhENnnfJLpE/6jMh7iiwTZO +oVvNazfISZ4P027JK9wSMR1XQmO2oCVOf162SHL1k6o +-> Z#uEQzx-grease y<&| pho{ +PJKNrTEwLc21FkpGIa+FNaOJvzFJ +--- efk3YmjrmLWXw5GSNc9NBhtpOqQWaK6d1rs/7ZlQjBg +mBʥF UiJ! OG' /}挔l۾ՙCt y7r^a95gk3Ia&36{)_^nGm  +WY~>bz{xZ@1-)t5`&O%`?p2 \ No newline at end of file