Files
jarvis/systemd/jarvis.service
T
Adolfo Reyna 199f762616 feat: Jarvis v2 - CPU optimized always-listening for iMac Ubuntu
- PipeWire/pw-record backend (no PortAudio needed) - tested mic live
- VAD: Energy (immediate) + Silero (torch CPU) switchable
- Wakeword: openWakeWord TFLite hey_jarvis 0.4
- STT: faster-whisper base int8 CPU - model loads OK on i3
- SpeakerID: ECAPA embeddings + fallback stats, enrollment store
- Vision: OpenCV Haar + face_recognition + webcam cam0 640x480 verified
- LLM: ollama/qwen2.5:3b, gemini_cli, hermes_api, echo strategies
- TTS: Piper + espeak + echo fallbacks
- Core pipeline: IDLE -> WAKE -> RECORDING -> STT -> SpeakerID/FaceID fusion -> LLM -> TTS -> followup window
- Config via jarvis.yaml, soul.md persona
- CLI tools: run, devices, enroll-speaker, enroll-face, test-vad, test-mic
- Systemd user service ready
- Tested on iMac 2010 i3 550 15GB Ubuntu 26.04 CPU-only
2026-07-10 12:16:03 -04:00

25 lines
537 B
Desktop File

[Unit]
Description=Jarvis v2 Voice Assistant - Always Listening
After=network.target sound.target
Wants=network.target
[Service]
Type=simple
WorkingDirectory=%h/Projects/jarvis-v2
ExecStart=%h/Projects/jarvis-v2/.venv/bin/jarvis run --config %h/Projects/jarvis-v2/jarvis.yaml
Restart=on-failure
RestartSec=5
Environment=PATH=%h/.local/bin:/usr/bin:/bin
Environment=PYTHONUNBUFFERED=1
# Logging
StandardOutput=journal
StandardError=journal
# Resource limits - protect old iMac
Nice= -5
CPUQuota=200%
[Install]
WantedBy=default.target