Skip to content

Latest commit

 

History

History
131 lines (88 loc) · 3.16 KB

File metadata and controls

131 lines (88 loc) · 3.16 KB

livesync-agent

Agente headless que sincroniza vaults de Obsidian en modo bidireccional usando CouchDB.

🇬🇧 Documentación en inglés: README.md

0) Instala primero el plugin de Obsidian

Este agente está pensado para funcionar con Self-hosted LiveSync.

Instalación del plugin:

1) Despliega CouchDB con HTTPS (Traefik + Swarm)

Usa los ficheros incluidos:

  • deploy/couchdb.yaml
  • deploy/README.md

Despliegue rápido:

printf 'admin' | docker secret create couchdb_user -
printf 'CAMBIA_A_PASSWORD_SEGURA' | docker secret create couchdb_password -
docker stack deploy -c deploy/couchdb.yaml couchdb

2) Instalar livesync-agent

Opción A: script de instalación por release (Linux x86_64)

curl -fsSL https://raw.githubusercontent.com/aitorroma/obsidian-livesync-agent/main/scripts/install.sh | bash

Opción B: Homebrew (macOS/Linux, compila desde código fuente)

brew tap aitorroma/obsidian-livesync-agent https://github.com/aitorroma/obsidian-livesync-agent
brew install livesync-agent

Para instalar la versión más reciente de main (build desde source):

brew install --HEAD aitorroma/obsidian-livesync-agent/livesync-agent

Opción C: compilar desde código fuente

cargo build --release
./target/release/livesync-agent --help

3) Configuración

Setup interactivo:

livesync-agent setup

Ruta de config por defecto: ~/.livesync-agent/config.toml (la carpeta se crea automáticamente).

Ejecutar un ciclo:

livesync-agent sync-once

Modo daemon:

livesync-agent daemon --interval-seconds 30

Instalar como servicio systemd de usuario (y arrancar al momento):

livesync-agent daemon --interval-seconds 30 --install

Si estás en una shell no interactiva (por ejemplo su - o algunos contenedores), el autoarranque puede fallar porque no hay bus de sesión de usuario. En ese caso el fichero del servicio queda instalado y puedes habilitarlo después desde una sesión de login normal:

systemctl --user daemon-reload
systemctl --user enable --now livesync-agent.service

Tip para servidores headless (una sola vez):

sudo loginctl enable-linger $USER

Releases

Workflow de release en GitHub Actions:

  • Fichero: .github/workflows/release.yml
  • Trigger: push de tag v* (ejemplo: v0.1.1)
  • Targets de build: Linux x86_64 (musl + gnu)

Crear una release:

git tag v0.1.1
git push origin v0.1.1

Assets publicados:

  • livesync-agent-<tag>-x86_64-unknown-linux-musl.tar.gz (portable, preferido por el instalador)
  • livesync-agent-<tag>-x86_64-unknown-linux-gnu.tar.gz
  • SHA256SUMS