.
This commit is contained in:
parent
9121a627cd
commit
0de07cd804
8 changed files with 94 additions and 9 deletions
|
|
@ -7,3 +7,4 @@ creation_rules:
|
||||||
- age:
|
- age:
|
||||||
- *root
|
- *root
|
||||||
- *user
|
- *user
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -15,6 +15,9 @@
|
||||||
path = "/root/.ssh/desktop";
|
path = "/root/.ssh/desktop";
|
||||||
mode = "0600";
|
mode = "0600";
|
||||||
};
|
};
|
||||||
|
sops.secrets."deepseek_api_key" = {
|
||||||
|
owner = "agent";
|
||||||
|
};
|
||||||
nix.settings.experimental-features = [
|
nix.settings.experimental-features = [
|
||||||
"nix-command"
|
"nix-command"
|
||||||
"flakes"
|
"flakes"
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,11 @@
|
||||||
{ pkgs, lib, ... }:
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}:
|
||||||
let
|
let
|
||||||
|
deepseekApiKeyPath = config.sops.secrets."deepseek_api_key".path;
|
||||||
home-manager-config =
|
home-manager-config =
|
||||||
{
|
{
|
||||||
uid,
|
uid,
|
||||||
|
|
@ -55,17 +61,27 @@ let
|
||||||
enable = true;
|
enable = true;
|
||||||
lfs.enable = true;
|
lfs.enable = true;
|
||||||
signing = {
|
signing = {
|
||||||
key = "${HOME}/.ssh/id_ed25519.pub";
|
key = "E6C30AB4CD83BB00";
|
||||||
signByDefault = true;
|
signByDefault = true;
|
||||||
};
|
};
|
||||||
includes = [
|
includes = [
|
||||||
|
{
|
||||||
|
condition = "gitdir:~/checkout/zig";
|
||||||
|
contents = {
|
||||||
|
user = {
|
||||||
|
name = "felipeim";
|
||||||
|
email = "felipe@imatos.dev";
|
||||||
|
signingkey = "E6C30AB4CD83BB00";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
{
|
{
|
||||||
condition = "gitdir:~/dealwise/";
|
condition = "gitdir:~/dealwise/";
|
||||||
contents = {
|
contents = {
|
||||||
user = {
|
user = {
|
||||||
name = "felipematos";
|
name = "felipematos";
|
||||||
email = "5471818+fnzr@users.noreply.github.com";
|
email = "5471818+fnzr@users.noreply.github.com";
|
||||||
signingkey = "${HOME}/.ssh/id_ed25519.pub";
|
signingkey = "E6C30AB4CD83BB00";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
@ -166,6 +182,40 @@ let
|
||||||
'';
|
'';
|
||||||
xdg.configFile."opencode/opencode.json".text = builtins.toJSON {
|
xdg.configFile."opencode/opencode.json".text = builtins.toJSON {
|
||||||
"$schema" = "https://opencode.ai/config.json";
|
"$schema" = "https://opencode.ai/config.json";
|
||||||
|
provider = {
|
||||||
|
deepseek = {
|
||||||
|
npm = "@ai-sdk/openai-compatible";
|
||||||
|
name = "DeepSeek";
|
||||||
|
options = {
|
||||||
|
baseURL = "https://api.deepseek.com";
|
||||||
|
apiKey = "{file:${deepseekApiKeyPath}}";
|
||||||
|
};
|
||||||
|
models = {
|
||||||
|
"deepseek-v4-pro" = {
|
||||||
|
name = "DeepSeek-V4-Pro";
|
||||||
|
limit = {
|
||||||
|
context = 1048576;
|
||||||
|
output = 262144;
|
||||||
|
};
|
||||||
|
options = {
|
||||||
|
reasoningEffort = "high";
|
||||||
|
thinking.type = "enabled";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
"deepseek-v4-flash" = {
|
||||||
|
name = "DeepSeek-V4-Flash";
|
||||||
|
limit = {
|
||||||
|
context = 1048576;
|
||||||
|
output = 262144;
|
||||||
|
};
|
||||||
|
options = {
|
||||||
|
reasoningEffort = "high";
|
||||||
|
thinking.type = "enabled";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
# provider = {
|
# provider = {
|
||||||
# ollama = {
|
# ollama = {
|
||||||
# model = "qwen3.6";
|
# model = "qwen3.6";
|
||||||
|
|
|
||||||
|
|
@ -112,7 +112,7 @@ in
|
||||||
type = "lua";
|
type = "lua";
|
||||||
config = ''
|
config = ''
|
||||||
require("lsp_lines").setup()
|
require("lsp_lines").setup()
|
||||||
vim.keymap.set("n", "<localleader>i", require("lsp_lines").toggle, { desc = "Toggle LSP lines" })
|
vim.keymap.set("n", "<localleader>it", require("lsp_lines").toggle, { desc = "Toggle LSP lines" })
|
||||||
'';
|
'';
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
|
|
@ -223,7 +223,6 @@ in
|
||||||
end
|
end
|
||||||
'';
|
'';
|
||||||
}
|
}
|
||||||
nvim-nio
|
|
||||||
{
|
{
|
||||||
plugin = nvim-treesitter.withAllGrammars;
|
plugin = nvim-treesitter.withAllGrammars;
|
||||||
type = "lua";
|
type = "lua";
|
||||||
|
|
|
||||||
|
|
@ -275,7 +275,7 @@
|
||||||
user = {
|
user = {
|
||||||
name = "felipematos";
|
name = "felipematos";
|
||||||
email = "5471818+fnzr@users.noreply.github.com";
|
email = "5471818+fnzr@users.noreply.github.com";
|
||||||
signingkey = "${HOME}/.ssh/desktop.pub";
|
signingkey = "E6C30AB4CD83BB00";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -29,6 +29,12 @@
|
||||||
".local/share/wallpapers"
|
".local/share/wallpapers"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
users.agent = {
|
||||||
|
files = [
|
||||||
|
".config/sops/age/keys.txt"
|
||||||
|
];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.persistence."/.nobackup" = {
|
environment.persistence."/.nobackup" = {
|
||||||
|
|
|
||||||
25
secrets/agent.yaml
Normal file
25
secrets/agent.yaml
Normal file
|
|
@ -0,0 +1,25 @@
|
||||||
|
deepseek_api_key: ENC[AES256_GCM,data:avik10ni0bk8i5KGiSNG1mqeLtV7bvjIaJEOdVbGQTHlZWg=,iv:4mzk9x1mRhwi9EWhb2qw9TNNQJ7sS4z/b0BnOWcG49M=,tag:wdfe4JDxlVIt//6Kt3hSWg==,type:str]
|
||||||
|
sops:
|
||||||
|
age:
|
||||||
|
- recipient: age1y0tj3kt67pfnj38t9c8g2ghry3a0mhcq8rrqv5xr4jekwepxaelqzu3dkf
|
||||||
|
enc: |
|
||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSAyMC9OWGFadElFblhRdmJt
|
||||||
|
Z0t3Zkswbk90ZW8wR2EzcU9PaVM1SnR2Q0FjCkpHZTlEUFZOTCs1aHMwa1NVTFF2
|
||||||
|
K1I2SFltMW8wNlQrcWl3M3BWUVZpSzgKLS0tIHpQWXkvL3BvUXFuTk5yYTY2cFNV
|
||||||
|
STlndGNjTUtYUnJ3aGlXdkFESG9vekkKhrvnO/mdebT2gzGwEnktUPEPkCgMDOeT
|
||||||
|
fO5n1wCu8dAIPDYNeORTUYT7pg0Co6r6NfLPxxHwecJP28AXE78efg==
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
|
- recipient: age16v8w7q4wmn22hhakq2uzaus2508rhldm7lcwh0kukshzjzyhuqesqz44ze
|
||||||
|
enc: |
|
||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBraHljTnkwS3hVUEZKeFJY
|
||||||
|
dlNUYnpYb3dyZzhSQThqNjMrc1BtMGF1YXprClRGc3FPazNpclQvNHZrTTBBWHlH
|
||||||
|
MURiTy9tbmh6VElVSFJBNjJZY1hPczgKLS0tIHAvckEreXUwakZ0WnpFM1FlVVQ1
|
||||||
|
eDBuRFlXMlFyazlwNWFKZDZSZzZSNkUKXBaF8twKleLVjtgEkcDvgpgXFfuwL+EF
|
||||||
|
yCVu6o5XNB05VqNtPlPIbirenp3yZ8I68PviQAx0sC3PAajecJ0Hag==
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
|
lastmodified: "2026-05-04T12:36:14Z"
|
||||||
|
mac: ENC[AES256_GCM,data:iZObET5U0JZEhL0WMbQckN8hXeiwl2M7PRIJR1sUsiMqg6fJ9ANzLd2ewY/wOmGnXitt2iHBCMGJm+RXkOGNfZQ173MCp/NyTQXuvDEZYZ3w2TRizjvkRuNs+UeoN9iWj16GvfvCKBr+eoSDjFGHiuzFvF7Rv6HEMSBz2D1JDYk=,iv:MIFYkBwglIgi2kcTipyicUcoXCRzvs4tcAKwUVT8XzE=,tag:7AoEOTjukcpOfUeJMCJN+A==,type:str]
|
||||||
|
unencrypted_suffix: _unencrypted
|
||||||
|
version: 3.12.2
|
||||||
|
|
@ -1,3 +1,4 @@
|
||||||
|
deepseek_api_key: ENC[AES256_GCM,data:HJXkEErncaOb2up0B45qisM+rIHoNmX9n6RZrdGN2JZlur8=,iv:4Dx5AjtDhWfYKlRiUrADT7HdHy/F2sfkzuPKuLhBRt4=,tag:AC3Zm+NHnnIQDCnlmBDUcQ==,type:str]
|
||||||
root:
|
root:
|
||||||
password: ENC[AES256_GCM,data:qA7sbNvWvfmWiLX4pIYOzDmuCwc3+7I1KvTHHYF5jDHR0CNRuya0XglP8TNK5qGLEJkdmD9WphdWvYY60NTOf5NFhDnqtm3ZIw==,iv:B42jl40hQbRqMRfV39fNne0E3KKCwriAQ5MQ0DF4QQA=,tag:hH/u0Qw6A2is4XOOQpnr2Q==,type:str]
|
password: ENC[AES256_GCM,data:qA7sbNvWvfmWiLX4pIYOzDmuCwc3+7I1KvTHHYF5jDHR0CNRuya0XglP8TNK5qGLEJkdmD9WphdWvYY60NTOf5NFhDnqtm3ZIw==,iv:B42jl40hQbRqMRfV39fNne0E3KKCwriAQ5MQ0DF4QQA=,tag:hH/u0Qw6A2is4XOOQpnr2Q==,type:str]
|
||||||
ssh:
|
ssh:
|
||||||
|
|
@ -30,7 +31,7 @@ sops:
|
||||||
NVlzQlQvMVc2dHZNK2pEWk80MStwY1UK38mxk1dJWi6XRKSwzcDA9qt8i1Grw2KJ
|
NVlzQlQvMVc2dHZNK2pEWk80MStwY1UK38mxk1dJWi6XRKSwzcDA9qt8i1Grw2KJ
|
||||||
ac2EbJIFwYLOaMNOKF9hu+NrMdruRpU/2B8HlYYZjpNWmLb9jwI4wQ==
|
ac2EbJIFwYLOaMNOKF9hu+NrMdruRpU/2B8HlYYZjpNWmLb9jwI4wQ==
|
||||||
-----END AGE ENCRYPTED FILE-----
|
-----END AGE ENCRYPTED FILE-----
|
||||||
lastmodified: "2025-12-22T18:37:14Z"
|
lastmodified: "2026-05-04T12:41:30Z"
|
||||||
mac: ENC[AES256_GCM,data:BQj7pieRocXUP7as5/coL76WrpBPOwEzHlR+vTEOkBTD89hOnfUo0f2gJi/Ho4KldnCHKjQVGoLhA7l/NIuKXGs8OQ+0IYW9EOoEROi01EePW++Nw7rtOLBRQWojO9HpOmrOz8/fqMHq/vxrdrLql5gomNHJgPllBoAcALCUl2E=,iv:sPB13YhGgDO+KA+azVBqtIPrqRuoPpRfEljV5Xg4ig4=,tag:BnCePF7ii63Glq6dCI7YDg==,type:str]
|
mac: ENC[AES256_GCM,data:OxKBSbx/NrkprIHTdI+iM2yMh1lhTMYuS7UO09NzxXHkyEoXtacDm7XtWIrELIxDIpqQGkousKcNRDmfiejzkpD6aLpdR1S0exXe1A+heWUMB9D+I+an51Nuv/LBGKeelK71RAq2H0VQZQgZd6OuzDECsK07lxnxUAWo8rxhScs=,iv:0cREbkAyUz1a6ze74MKmfeX8RJjMIrwgRoTPeGADEiE=,tag:DJaNf7gckCDoYLzzw+SRUg==,type:str]
|
||||||
unencrypted_suffix: _unencrypted
|
unencrypted_suffix: _unencrypted
|
||||||
version: 3.11.0
|
version: 3.12.2
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue