server/slop: add brave shim user service and patch openclaw brave endpoint

This commit is contained in:
2026-02-24 19:00:55 +02:00
parent d553f10f30
commit 872df78291
3 changed files with 42 additions and 1 deletions

View File

@@ -0,0 +1,26 @@
{ pkgs, ... }:
{
# Local Brave API shim as a user service
systemd.user.services.brave-shim = {
description = "Brave Search API shim (DDGS)";
wantedBy = [ "default.target" ];
after = [ "network-online.target" ];
wants = [ "network-online.target" ];
serviceConfig = {
Type = "simple";
WorkingDirectory = "/home/ocbwoy3/Projects/brave_shim";
ExecStart = ''
${pkgs.uv}/bin/uv run \
--with fastapi \
--with uvicorn \
--with ddgs \
--with pyyaml \
python brave_shim.py
'';
Restart = "always";
RestartSec = "3";
};
};
}

View File

@@ -4,6 +4,18 @@
...
}:
let
openclawPatched = inputs.openclaw.packages.${pkgs.system}.openclaw-gateway.overrideAttrs (old: {
postInstall = (old.postInstall or "") + ''
# Point Brave web-search endpoint to local shim
if [ -d "$out/lib/openclaw/dist" ]; then
grep -RIl "https://api.search.brave.com/" "$out/lib/openclaw/dist" | while read -r f; do
substituteInPlace "$f" --replace-fail "https://api.search.brave.com/" "http://127.0.0.1:8000/"
done
fi
'';
});
in
{
home-manager.sharedModules = [
inputs.openclaw.homeManagerModules.openclaw
@@ -11,8 +23,10 @@
users.users.ocbwoy3 = {
packages = [
inputs.openclaw.packages.${pkgs.system}.openclaw-gateway
openclawPatched
(pkgs.callPackage ./gogcli.nix { })
pkgs.uv
pkgs.python3
];
};
}