diff --git a/tests/scripts/desktop_update/test_desktop_update_gateway_flag.py b/tests/scripts/desktop_update/test_desktop_update_gateway_flag.py index 825a41adc6..1b3879c776 100644 --- a/tests/scripts/desktop_update/test_desktop_update_gateway_flag.py +++ b/tests/scripts/desktop_update/test_desktop_update_gateway_flag.py @@ -32,7 +32,7 @@ requires_posix_handoff = pytest.mark.skipif( # Stands in for `hermes`: answers the `update --help` probe (so --keep-stash # is kept), and appends every non-help invocation's argv as one JSON line so # the tests can inspect exactly what the update was invoked with. -FAKE_HERMES = """#!/bin/bash +FAKE_HERMES = """#!/usr/bin/env bash case "$*" in *--help*) echo "--keep-stash"; exit 0 ;; esac printf '%s\\n' "$*" >> "$HERMES_TEST_ARGV" exit 0 diff --git a/tests/scripts/install/test_install_sh_system_package_probe.py b/tests/scripts/install/test_install_sh_system_package_probe.py index 2c798a70dd..8522a2f1a4 100644 --- a/tests/scripts/install/test_install_sh_system_package_probe.py +++ b/tests/scripts/install/test_install_sh_system_package_probe.py @@ -18,7 +18,7 @@ pytestmark = [ def _write_executable(path: Path, body: str) -> None: - path.write_text(f"#!/bin/bash\n{body}\n") + path.write_text(f"#!/usr/bin/env bash\n{body}\n") path.chmod(path.stat().st_mode | stat.S_IXUSR) diff --git a/website/docs/user-guide/skills/bundled/productivity/productivity-google-workspace.md b/website/docs/user-guide/skills/bundled/productivity/productivity-google-workspace.md index 117dee275e..fe22fd0ab1 100644 --- a/website/docs/user-guide/skills/bundled/productivity/productivity-google-workspace.md +++ b/website/docs/user-guide/skills/bundled/productivity/productivity-google-workspace.md @@ -48,6 +48,11 @@ Gmail, Calendar, Drive, Contacts, Sheets, and Docs — through Hermes-managed OA The setup is fully non-interactive — you drive it step by step so it works on CLI, Telegram, Discord, or any platform. +Run the setup script with Python from the Hermes environment, not an unrelated +system Python. `--install-deps` syncs Hermes' declared Google extra through PM; +after syncing, restart Hermes and rerun the OAuth command. If Hermes is not +importable, use `hermes setup` first rather than installing packages with pip. + Define a shorthand first: ```bash