diff --git a/pkgs/talk/default.nix b/pkgs/talk/default.nix index 5c3f5d3..fc9d9fe 100644 --- a/pkgs/talk/default.nix +++ b/pkgs/talk/default.nix @@ -20,7 +20,15 @@ # ── Config ────────────────────────────────────────────────────── API_KEY="''${ELEVENLABS_API_KEY:?Set ELEVENLABS_API_KEY in your environment}" VOICE_ID="''${ELEVENLABS_VOICE_ID:-KXxZd16DiBqt82nbarJx}" - TEXT="''${1:?Usage: talk \"Text zum Sprechen\"}" + # Argument hat Vorrang, sonst stdin lesen wenn Pipe + if [ $# -ge 1 ]; then + TEXT="$1" + elif [ ! -t 0 ]; then + TEXT=$(cat) + else + echo "Usage: talk \"Text\" oder echo Text | talk" >&2 + exit 1 + fi AUDIO_FILE="/tmp/voice-notify-$$.mp3" ACTION_FILE="/tmp/voice-action-$$"