diff --git a/home-manager/progs/opencode.nix b/home-manager/progs/opencode.nix index cfaca72..919a41d 100644 --- a/home-manager/progs/opencode.nix +++ b/home-manager/progs/opencode.nix @@ -51,10 +51,29 @@ let }; in { - home.packages = [ - inputs.oh-my-opencode.packages.${pkgs.stdenv.hostPlatform.system}.oh-my-opencode - pkgs.playwright-driver.browsers - ]; + home.packages = + let + ohMyOpencode = + let + orig = inputs.oh-my-opencode.packages.${pkgs.stdenv.hostPlatform.system}; + fixed-node_modules = orig.node_modules.overrideAttrs (_: { + outputHash = "sha256-qq/eEoxFELVdt4qaJkrw8XNZ/Ph/RJdsyIp7LteQE5A="; + }); + in + orig.oh-my-opencode.overrideAttrs (_: { + buildPhase = '' + cp -r ${fixed-node_modules}/node_modules . + chmod -R u+w node_modules + patchShebangs node_modules/ + export HOME=$(mktemp -d) + bun run build + ''; + }); + in + [ + ohMyOpencode + pkgs.playwright-driver.browsers + ]; home.sessionVariables = { PLAYWRIGHT_BROWSERS_PATH = "${pkgs.playwright-driver.browsers}";