Rama experimental de Oasis para escritorio con Karvan (salas efimeras y llamadas). NO oficial: el oficial es github.com/epsylon/oasis
Find a file
SITO c0e1fdf156 karvan: el panel de llamada no tenia estilos
Un comentario sin cerrar en karvan.css se comia la llave de la regla que
neutraliza el div{background:#222;padding:20px} global, y con ella todo el
bloque de la videollamada. En escritorio el resultado eran dos cajas vacias
enormes y unos botones cuadrados en vez del panel.

Ademas:

- La hoja del modulo se cargaba antes que el tema, asi que el tema ganaba por
  cascada. Pasa a cargarse despues, que es lo que decia su propio comentario.
- Las opciones de duracion (30m / 2h / 8h) se partian letra a letra; les
  faltaba white-space: nowrap.
- Clear-SNH usa !important en casi todo, asi que ninguna hoja posterior puede
  ganarle. Se resuelve como lo resuelve Oasis: es el tema el que pinta el
  modulo. Sin ese bloque las burbujas salian negras sobre blanco y el texto
  secundario en amarillo palido, ilegible.

Comprobado con los cuatro temas.
2026-08-19 10:31:36 +02:00
docs Oasis 0.9.5 con Karvan para escritorio 2026-08-19 00:35:08 +02:00
scripts Oasis 0.9.5 con Karvan para escritorio 2026-08-19 00:35:08 +02:00
src karvan: el panel de llamada no tenia estilos 2026-08-19 10:31:36 +02:00
test Oasis 0.9.5 con Karvan para escritorio 2026-08-19 00:35:08 +02:00
.gitignore Oasis 0.9.5 con Karvan para escritorio 2026-08-19 00:35:08 +02:00
install.sh Oasis 0.9.5 con Karvan para escritorio 2026-08-19 00:35:08 +02:00
LICENSE Oasis 0.9.5 con Karvan para escritorio 2026-08-19 00:35:08 +02:00
oasis.sh Oasis 0.9.5 con Karvan para escritorio 2026-08-19 00:35:08 +02:00
package.json Oasis 0.9.5 con Karvan para escritorio 2026-08-19 00:35:08 +02:00
README.md Oasis 0.9.5 con Karvan para escritorio 2026-08-19 00:35:08 +02:00

OASIS_LINUX — rama de desarrollo experimental

⚠ ESTO NO ES OASIS OFICIAL

Esta es una rama de desarrollo experimental mantenida por el hacklab, no afiliada al proyecto original.

El repositorio oficial de Oasis es el de epsylon: https://github.com/epsylon/oasis

Si quieres usar Oasis de verdad, instala el oficial. Lo que hay aquí puede romperse, cambiar de forma incompatible o desaparecer sin aviso. No está auditado y no tiene garantía de ninguna clase.

Los fallos de esta rama se reportan aquí, nunca a epsylon.

Versión base: Oasis 0.9.5.

Qué añade esta rama

Karvan — salas efímeras

Salas de chat que viven solo en memoria y se autodestruyen solas:

  • TTL de inactividad (30 min) y absoluto (2 h), configurables al crear la sala.
  • Nada se escribe en disco ni en el log SSB: al vencer el plazo, la sala y sus mensajes desaparecen.
  • Anillo de 250 mensajes, 100 salas simultáneas, 50 miembros por sala.
  • El identificador de sala son 72 bits y es la única credencial: quien tiene el enlace, entra. No hay lista de miembros que valga.
  • Invitación a un contacto por mensaje privado SSB.
  • Funciona sin JavaScript: enviar y recibir van por formulario y recarga. Con JavaScript se añade un canal directo entre pares.

Llamadas de audio y vídeo

Sobre el mismo WebRTC del chat. En escritorio el navegador pide los permisos de cámara y micrófono directamente.

Sin servidores de terceros: no hay ningún STUN de fábrica. Un servidor STUN aprende la IP pública y el momento de cada llamada, así que no se pone ninguno. Por defecto solo hay candidatos host, que funcionan en la misma red y con NAT amable. Si tu nodo tiene TURN propio, se configura en oasis-config.json:

"rtc": {
  "stun": ["stun:tu.pub:3478"],
  "turn": { "urls": ["turn:tu.pub:3478"], "secret": "<static-auth-secret>", "ttlSec": 3600 },
  "relayOnly": false
}

Con secret se emiten credenciales efímeras por el mecanismo REST de coturn. Con relayOnly toda la media pasa por el TURN y ningún par ve la IP del otro.

Qué NO tiene respecto al oficial

  • Módulo de IA: fuera. El modelo son unos 4 GB.
  • housing: portado pero apagado por defecto.

Instalación

Igual que el oficial:

cd src/server && npm install
cd ../.. && ./oasis.sh

Relación con upstream

Esta rama sigue las versiones de epsylon de cerca. El código propio vive separado (src/views/fork/, src/backend/fork_routes.js, src/models/karvan_model.js y las traducciones en translations/fork/) para que integrar cada versión nueva no arrastre la interfaz de la rama. Sobre los ficheros de upstream solo hay enganches de una línea.

Licencia

AGPL-3.0, la misma que el proyecto original.