From 2449532b30a81c1dc537f849f91f5ce82188bb9a Mon Sep 17 00:00:00 2001 From: m3tm3re Date: Fri, 23 Jan 2026 18:14:08 +0100 Subject: [PATCH] chore: update dependencies, add basecamp secrets, improve desktop environment - Update opencode to v1.1.34 - Add new opencode agents (Prometheus, Metis, Momus, Atlas) and categories - Switch m3ta-nixpkgs back to local path - Add basecamp client credentials for m3-ares and m3-kratos - Set NIXOS_OZONE_WL=1 for better Wayland app support in Hyprland - Remove redundant wrl.enable from flatpak portal config --- flake.lock | 18 ++++----- flake.nix | 4 +- home/features/coding/opencode.nix | 51 +++++++++++++++++++++++++ home/features/desktop/hyprland.nix | 1 + hosts/common/extraServices/flatpak.nix | 1 - hosts/m3-ares/secrets.nix | 8 ++++ hosts/m3-kratos/secrets.nix | 12 ++++-- secrets.nix | 2 + secrets/basecamp-client-id.age | Bin 0 -> 1122 bytes secrets/basecamp-client-secret.age | 21 ++++++++++ 10 files changed, 103 insertions(+), 15 deletions(-) create mode 100644 secrets/basecamp-client-id.age create mode 100644 secrets/basecamp-client-secret.age diff --git a/flake.lock b/flake.lock index 0afdd28..7671524 100644 --- a/flake.lock +++ b/flake.lock @@ -244,8 +244,8 @@ "opencode": "opencode" }, "locked": { - "lastModified": 1768931358, - "narHash": "sha256-IXEV3D4xK4SxhcwFQVjObdAeKkuJy+e54mFgpfuTLK8=", + "lastModified": 1769186400, + "narHash": "sha256-9e9yvKJPufg0mTroH+vUUzxp+eX1tvy5QLSzKSw6uLI=", "path": "/home/m3tam3re/p/NIX/nixpkgs", "type": "path" }, @@ -452,11 +452,11 @@ }, "nixpkgs_4": { "locked": { - "lastModified": 1768569498, - "narHash": "sha256-bB6Nt99Cj8Nu5nIUq0GLmpiErIT5KFshMQJGMZwgqUo=", + "lastModified": 1768393167, + "narHash": "sha256-n2063BRjHde6DqAz2zavhOOiLUwA3qXt7jQYHyETjX8=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "be5afa0fcb31f0a96bf9ecba05a516c66fcd8114", + "rev": "2f594d5af95d4fdac67fba60376ec11e482041cb", "type": "github" }, "original": { @@ -540,16 +540,16 @@ "nixpkgs": "nixpkgs_4" }, "locked": { - "lastModified": 1768911228, - "narHash": "sha256-iJ4WLNyP9i8baxp1FJJLv2VBD3XcE8nCruwO3GmSmK4=", + "lastModified": 1769153255, + "narHash": "sha256-ardM8zEJWvTvsFMQZWivjGPB2uIqFw6QPAzrRjAHQKY=", "owner": "anomalyco", "repo": "opencode", - "rev": "e521fee0023a604bb6d5ef39b4b892cbf1a0f9d4", + "rev": "c130dd425a32fe1c1cd3747ea6565b0e6bf50100", "type": "github" }, "original": { "owner": "anomalyco", - "ref": "v1.1.27", + "ref": "v1.1.34", "repo": "opencode", "type": "github" } diff --git a/flake.nix b/flake.nix index 8934457..a46386d 100644 --- a/flake.nix +++ b/flake.nix @@ -22,8 +22,8 @@ nixpkgs-9e58ed7.url = "github:nixos/nixpkgs/9e58ed7ba759d81c98f033b7f5eba21ca68f53b0"; nixpkgs-master.url = "github:nixos/nixpkgs/master"; - # m3ta-nixpkgs.url = "git+https://code.m3ta.dev/m3tam3re/nixpkgs"; - m3ta-nixpkgs.url = "path:/home/m3tam3re/p/NIX/nixpkgs"; + m3ta-nixpkgs.url = "git+https://code.m3ta.dev/m3tam3re/nixpkgs"; + # m3ta-nixpkgs.url = "path:/home/m3tam3re/p/NIX/nixpkgs"; # nur = { url = "github:nix-community/NUR"; diff --git a/home/features/coding/opencode.nix b/home/features/coding/opencode.nix index 0f02a47..5ea4985 100644 --- a/home/features/coding/opencode.nix +++ b/home/features/coding/opencode.nix @@ -319,6 +319,57 @@ bash = "deny"; }; }; + "Prometheus (Planner)" = { + model = "zai-coding-plan/glm-4.7"; + permission = { + edit = "deny"; + bash = "allow"; + }; + }; + "Metis (Plan Consultant)" = { + model = "zai-coding-plan/glm-4.7"; + permission = { + edit = "deny"; + bash = "allow"; + }; + }; + "Momus (Plan Reviewer)" = { + model = "zai-coding-plan/glm-4.7"; + permission = { + edit = "deny"; + bash = "allow"; + }; + }; + "Atlas" = { + model = "zai-coding-plan/glm-4.7"; + permission = { + edit = "deny"; + bash = "allow"; + }; + }; + }; + "categories" = { + "visual-engineering" = { + "model" = "zai-coding-plan/glm-4.7"; + }; + "ultrabrain" = { + "model" = "zai-coding-plan/glm-4.7"; + }; + "artistry" = { + "model" = "zai-coding-plan/glm-4.7"; + }; + "quick" = { + "model" = "zai-coding-plan/glm-4.5-ai"; + }; + "unspecified-low" = { + "model" = "zai-coding-plan/glm-4.7"; + }; + "unspecified-high" = { + "model" = "zai-coding-plan/glm-4.7"; + }; + "writing" = { + "model" = "zai-coding-plan/glm-4.7"; + }; }; disabled_mcps = ["context7" "websearch"]; }; diff --git a/home/features/desktop/hyprland.nix b/home/features/desktop/hyprland.nix index 5a9a523..03292ab 100644 --- a/home/features/desktop/hyprland.nix +++ b/home/features/desktop/hyprland.nix @@ -31,6 +31,7 @@ in { "XDG_CURRENT_DESKTOP,Hyprland" "XDG_SESSION_TYPE,wayland" "XDG_SESSION_DESKTOP,Hyprland" + "NIXOS_OZONE_WL,1" ]; input = { diff --git a/hosts/common/extraServices/flatpak.nix b/hosts/common/extraServices/flatpak.nix index 700a01b..140c71e 100644 --- a/hosts/common/extraServices/flatpak.nix +++ b/hosts/common/extraServices/flatpak.nix @@ -14,7 +14,6 @@ in { xdg.portal = { # xdg desktop intergration (required for flatpak) enable = true; - wlr.enable = true; extraPortals = with pkgs; [ xdg-desktop-portal-hyprland ]; diff --git a/hosts/m3-ares/secrets.nix b/hosts/m3-ares/secrets.nix index 8d9e028..8079cb1 100644 --- a/hosts/m3-ares/secrets.nix +++ b/hosts/m3-ares/secrets.nix @@ -33,6 +33,14 @@ file = ../../secrets/exa-key.age; owner = "m3tam3re"; }; + basecamp-client-id = { + file = ../../secrets/basecamp-client-id.age; + owner = "m3tam3re"; + }; + basecamp-client-secret = { + file = ../../secrets/basecamp-client-secret.age; + owner = "m3tam3re"; + }; tailscale-key.file = ../../secrets/tailscale-key.age; m3tam3re-secrets = { file = ../../secrets/m3tam3re-secrets.age; diff --git a/hosts/m3-kratos/secrets.nix b/hosts/m3-kratos/secrets.nix index 949aeae..d1de284 100644 --- a/hosts/m3-kratos/secrets.nix +++ b/hosts/m3-kratos/secrets.nix @@ -5,9 +5,7 @@ file = ../../secrets/anytype-key.age; owner = "m3tam3re"; }; - tailscale-key = { - file = ../../secrets/tailscale-key.age; - }; + tailscale-key = { file = ../../secrets/tailscale-key.age; }; wg-DE = { file = ../../secrets/wg-DE.age; path = "/etc/wireguard/DE.conf"; @@ -40,6 +38,14 @@ file = ../../secrets/exa-key.age; owner = "m3tam3re"; }; + basecamp-client-id = { + file = ../../secrets/basecamp-client-id.age; + owner = "m3tam3re"; + }; + basecamp-client-secret = { + file = ../../secrets/basecamp-client-secret.age; + owner = "m3tam3re"; + }; }; }; } diff --git a/secrets.nix b/secrets.nix index 380562a..e0daecc 100644 --- a/secrets.nix +++ b/secrets.nix @@ -29,6 +29,8 @@ in { "secrets/paperless-key.age".publicKeys = systems ++ users; "secrets/ref-key.age".publicKeys = systems ++ users; "secrets/exa-key.age".publicKeys = systems ++ users; + "secrets/basecamp-client-id.age".publicKeys = systems ++ users; + "secrets/basecamp-client-secret.age".publicKeys = systems ++ users; "secrets/gitea-runner-token.age".publicKeys = systems ++ users; "secrets/restreamer-env.age".publicKeys = systems ++ users; "secrets/searx.age".publicKeys = systems ++ users; diff --git a/secrets/basecamp-client-id.age b/secrets/basecamp-client-id.age new file mode 100644 index 0000000000000000000000000000000000000000..828d50b8a94876da88ed540c9cd947130dbf62cd GIT binary patch literal 1122 zcmYdHPt{G$OD?J`D9Oyv)5|YP*Do{V(zR14F3!+RO))YxHMCSP@$>O6Dp$yf$f`28 z2#9cZHLJ2nbTW#F46HD>)UGl#Fv}_^3JNPobx$qLH_S*fj^wH=N_5S0G0)3Mc1}wU zaW?jeD$On}D@``HEcc6YPOK{Najgu_boVLocSN_%G`l>x*ipf>JTTKeOW!ahpe)C? z(ks8*(=9B*B{AJ4**7~gB{3k=*}|Nv+o>ceqpD21*e5(Q z&C$;&EzP?mIL9g1%q5`E#7)1d7{fNp6q88LK!wzFS7+zYV4viY;D};Nf0InZO2dGp zqSPRB-_*q1bpL>SgAk+qyp+-m1Fn$Bs4}C%{K8!Gyt2v+H^leFK`G*!& z=9woana^3HKJ&dbhlEOE~9am}gB_HwJJNX<%4 zOHIkGst7a7a89o9cJ?fD*4EB44$kn?&I&V)DyZVJ@CYp_@+eC(D9Fw)D$n;XbOHRyBO!0TgPIC&3GEa64NHcS>(2sIA2-ePy3`>fv@H4kC$;wQra0>HH z3w8-~=8E#ki!2TgitsHqsERO;a54-m%`|W^56f}ON+}CXOmcTKw=B|k4~Qx=$n$oK zNXj-!D>KZh@JiQC%So~@DC07B4lW2!caAK~GfgV2^a{*1O7k`hNeL;kaPtYyjS9Cc zP7N(A*YQo&2kUVOY(FJ zb~g6S;7arjER4!EN)0H;&q=We_73&4bj~hHc63Wi(l^TrN-rsQFR{!j%*eJhs*E(T za7s+e^RvkCuQbl`)HVu>DB$AK)zwuaLadg zEJ_Xv2n{l@^fahQvoPW6I4pBliPhBYsFTt51qvT#rsZ*7sXd)9UAuPi?_U=dPAc2i tu*iJ*(ep1n(^oJ~{2?N-a#O+nHNkSMeLj=Rwp4FyevzcDXflbR5db1#eog=Y literal 0 HcmV?d00001 diff --git a/secrets/basecamp-client-secret.age b/secrets/basecamp-client-secret.age new file mode 100644 index 0000000..0dc3114 --- /dev/null +++ b/secrets/basecamp-client-secret.age @@ -0,0 +1,21 @@ +age-encryption.org/v1 +-> ssh-ed25519 4NLKrw eqiq6a9Ht012v9ryAt2uZwpCU5/DFbiMZIkH0A/ovhc +c2ubOjYEc6RjhrZUCyKvB7chJwlCBv1KeIXdXlYcyNA +-> ssh-ed25519 5kwcsA R+KKgXolqFgs3sPFKLWBj8CYMHvsE0vcoPYjqgaYSDc +jdl1BcHDXY3lvAfFKeHl8lNgbjbxLPOL+5OaPBsJC5o +-> ssh-ed25519 9d4YIQ KYeIi3u2JB3efI5pSlc4up2wgAvR+X1xsHuRSZmr5RY +Qy6wagBuOXuy5b23stKEc/zfMpN53/56LKMgPFd5fwo +-> ssh-ed25519 3Bcr1w yYclbDnxBkGQF+MmcqNDG2VHZDcXK01Orl2c0L4auy4 +wbC9r7P4hnJT+V0Ic3Pk9nQ5ZUoPL+/qR9Ab5OHv3d0 +-> ssh-rsa DQlE7w +CQBYcl5SvyoDAm5n1QWE9o2er5GxYZvG2zrBtOPs+S7gnm6yHL2rtKDfxf+tpp/E +8xJHSi6t9zTWYwZ+udU8gjmawe8GcaWGYOHqjCd4H6Ic5c1aMMfUQsPR2aWlJ7R5 +4B1D83pZ/PHp1Qqb/AJKoiw3DNo4KrvYS+nX4FXuDD8o9JRuY5KjbY+9E2UcHx0s +8XGZq26TY8I2hVA8519bZeI4FTqoBx0yUBuE3VjTlrd/XtgpvNk0YswyMBiqpdhG +PY+KZAnEPw3TbFtfmqbLk5QXrm4pn/TE/z4kzN9+3CkT2zbBBPGwaBAtQsOQ6yKL +ZQRtnEm9FJzOBu3fFodeBfea8vEzEmuro+zbw/94tk0zjpMzfSehRfLE8tusgO+S +/W/7yzlMVeutlWbzwpMZ4mALjz/PAYq8O3Kh88dbu9XEh0i/oWPBJiHlUdYND2YJ +5WOSlXDnotRmwB8vGmyPWS72jBfgPZLVfA7y73RzOhc6vwo4jU5Nh6ee+3LPOjfW + +--- 6X7pxwraQpXikkDgLrY3ay7zcwdk9U9LHx/MP8jEgcw +<3‘jÂö¼uWÙF“’DæÙŸ™$Hð¹Ç†s)àSÚˆ›/ïÂëº pí3üA‰Sö^ùïóïVß‹u@9‡»µ´rš+L2 \ No newline at end of file