Al entrar en el repositorio se veia el aviso de rama experimental y, debajo, el README entero de upstream copiado: 350 lineas contando lo que ya cuenta el proyecto oficial, y mejor. Ahora la portada ensena lo que hay aqui: la tabla de que anade esta rama frente al oficial, Oasis explicado en cuatro dibujos, Karvan, las videollamadas, las identidades y como empezar desde cero, todo con esquemas propios y capturas reales. El aviso de que esto NO es Oasis oficial se mantiene arriba del todo y completo. Y al final, los enlaces al proyecto de epsylon, que es de donde sale todo. Las imagenes se enlazan a la wiki en vez de duplicarse en el repositorio, que es lo que hace tambien upstream con las suyas. El fichero se sigue leyendo al arrancar el backend (readFileSync sin try/catch), asi que lo importante es que exista: comprobado que arranca.
184 lines
8 KiB
Markdown
184 lines
8 KiB
Markdown
# OASIS_MOBILE — 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** · Rama: `PRUEBAS` ·
|
|
[Documentación completa](https://gitea.laenre.net/hacklab/OASIS_MOBILE/wiki) ·
|
|
[Versión de escritorio](https://gitea.laenre.net/hacklab/OASIS_LINUX)
|
|
|
|

|
|
|
|
---
|
|
|
|
## Lo que añade
|
|
|
|
| | Oasis oficial | Esta rama |
|
|
|---|---|---|
|
|
| **Salas efímeras** | — | Karvan: mensajes que solo viven en memoria y se autodestruyen |
|
|
| **Videollamadas** | — | Audio y vídeo por WebRTC, sin servidores de terceros |
|
|
| **Interfaz de móvil** | El menú de escritorio en una pantalla pequeña | Panal de hexágonos, filtros y barra de accesos rápidos |
|
|
| **Varias identidades** | Una por instalación | Varias en el mismo móvil, con aviso si dos comparten clave |
|
|
| **Respuesta citada** | — | Responder a un mensaje concreto dentro de un chat |
|
|
| **Envoltorio Android** | APK sin permisos de cámara ni micrófono | Proyecto Gradle propio: permisos, subida de ficheros, servicio que sobrevive |
|
|
| **Metadatos de las fotos** | Se quitan solo si está `sharp`; en Android **nunca** | Se quitan siempre: GPS, marca, modelo, número de serie |
|
|
| **Servidor STUN** | Uno de Google, por defecto | Ninguno. TURN propio si lo configuras |
|
|
|
|
Los nombres de las categorías, los módulos y el resto de la aplicación son los de
|
|
epsylon, sin tocar.
|
|
|
|
---
|
|
|
|
## Qué es Oasis, en cuatro dibujos
|
|
|
|
Una red social **sin servidor**: publicas en tu propio equipo y los demás se traen una
|
|
copia. No hay cuenta, no hay contraseña y nadie puede borrarte.
|
|
|
|

|
|
|
|
Los mensajes viajan **de vecino en vecino**, así que llegan a gente con la que nunca te
|
|
has conectado. Por eso funciona incluso sin internet, entre dos móviles en la misma wifi.
|
|
|
|

|
|
|
|
Un **pub** es solo un nodo que no se apaga nunca. No es un servidor con tus datos: no
|
|
guarda tu identidad, no decide qué ves y no puede borrarte.
|
|
|
|

|
|
|
|
Todo lo que publicas se encadena y va **firmado con tu clave**. Nadie puede colar un
|
|
mensaje en tu nombre ni cambiar lo que dijiste.
|
|
|
|

|
|
|
|
> La explicación completa —los saltos, las tribus, el LARP, los módulos— está en
|
|
> **[Entender Oasis en diez minutos](https://gitea.laenre.net/hacklab/OASIS_MOBILE/wiki/Entender)**.
|
|
|
|
---
|
|
|
|
## Karvan: salas que se borran solas
|
|
|
|

|
|
|
|
Lo que se dice dentro **no toca el disco**, no entra en tu registro y no se replica a
|
|
nadie. Dos relojes corren a la vez —inactividad y tiempo absoluto— y la sala muere con
|
|
el que llegue antes.
|
|
|
|
<p align="center">
|
|
<img src="https://gitea.laenre.net/hacklab/OASIS_MOBILE/wiki/raw/img/10-karvan-salas.png" width="270">
|
|
<img src="https://gitea.laenre.net/hacklab/OASIS_MOBILE/wiki/raw/img/11-karvan-sala.png" width="270">
|
|
</p>
|
|
|
|
---
|
|
|
|
## Videollamadas sin terceros
|
|
|
|

|
|
|
|
El servidor solo sirve para que os encontréis: **la voz y el vídeo van directos** entre
|
|
los participantes, cifrados de extremo a extremo. Sin STUN de Google.
|
|
|
|
<p align="center">
|
|
<img src="https://gitea.laenre.net/hacklab/OASIS_MOBILE/wiki/raw/img/12-permiso-camara.png" width="270">
|
|
<img src="https://gitea.laenre.net/hacklab/OASIS_MOBILE/wiki/raw/img/15-llamada-controles.png" width="270">
|
|
</p>
|
|
|
|
Esto **no es posible con la APK oficial**: no declara los permisos de cámara y su
|
|
navegador interno los deniega. Por eso esta rama trae su propio envoltorio Android.
|
|
|
|
---
|
|
|
|
## La interfaz
|
|
|
|

|
|
|
|
<p align="center">
|
|
<img src="https://gitea.laenre.net/hacklab/OASIS_MOBILE/wiki/raw/img/01-portada.png" width="240">
|
|
<img src="https://gitea.laenre.net/hacklab/OASIS_MOBILE/wiki/raw/img/04-hexagono-network.png" width="240">
|
|
<img src="https://gitea.laenre.net/hacklab/OASIS_MOBILE/wiki/raw/img/09-barra-con-karvan.png" width="240">
|
|
</p>
|
|
|
|
Casi cincuenta módulos no caben en la pantalla de un teléfono: se reparten en un panal
|
|
de categorías, dos filtros arriba y una barra de cuatro atajos que eliges tú.
|
|
|
|
---
|
|
|
|
## Empezar desde cero
|
|
|
|

|
|
|
|
| | |
|
|
|---|---|
|
|
| **[oasis-project.pub](https://oasis-project.pub)** | Directorio de pubs, con invitaciones y estado de cada uno |
|
|
| **[0asis.net](https://0asis.net)** | El proyecto explicado desde el principio |
|
|
| **[wiki.solarnethub.com](https://wiki.solarnethub.com/socialnet/overview)** | La documentación oficial, módulo por módulo |
|
|
|
|
---
|
|
|
|
## Instalar
|
|
|
|
La APK **no está en ninguna tienda**: se descarga de las *releases* de este repositorio
|
|
y se instala a mano, con orígenes desconocidos activado. Se instala **junto al Oasis
|
|
oficial** sin pisarlo —el identificador es `net.laenre.oasis`—, así que puedes tener
|
|
los dos y comparar.
|
|
|
|
Necesita unos **350 MB libres**. El primer arranque tarda entre 15 y 60 segundos porque
|
|
descomprime el servidor.
|
|
|
|
> **Verifica la huella de la firma** antes de instalar una APK bajada de un servidor
|
|
> propio: `apksigner verify --print-certs`
|
|
|
|
### Compilar
|
|
|
|
```sh
|
|
cd android
|
|
./scripts/prepare.sh ../../oasis_mobile # librerías nativas y backend, la primera vez
|
|
./scripts/release.sh # compila, verifica y calcula la huella
|
|
```
|
|
|
|

|
|
|
|
---
|
|
|
|
## Documentación
|
|
|
|
Todo lo de arriba, en detalle, está en la
|
|
**[wiki](https://gitea.laenre.net/hacklab/OASIS_MOBILE/wiki)**:
|
|
|
|
| | |
|
|
|---|---|
|
|
| [Entender Oasis](https://gitea.laenre.net/hacklab/OASIS_MOBILE/wiki/Entender) | La red, el gossip, los saltos, los pubs, las tribus y el LARP |
|
|
| [Empezar desde cero](https://gitea.laenre.net/hacklab/OASIS_MOBILE/wiki/Empezar) | Invitación, seguir gente, abrir tu blog o tu tienda |
|
|
| [Karvan](https://gitea.laenre.net/hacklab/OASIS_MOBILE/wiki/Karvan) | Salas efímeras, paso a paso |
|
|
| [Llamadas](https://gitea.laenre.net/hacklab/OASIS_MOBILE/wiki/Llamadas) | Cómo se llama y cómo montar un TURN |
|
|
| [La interfaz](https://gitea.laenre.net/hacklab/OASIS_MOBILE/wiki/Interfaz) | Botón por botón |
|
|
| [Identidades](https://gitea.laenre.net/hacklab/OASIS_MOBILE/wiki/Identidades) | Varias cuentas en el mismo móvil |
|
|
| [Compilar la APK](https://gitea.laenre.net/hacklab/OASIS_MOBILE/wiki/Compilar) | Y cómo se publica una versión |
|
|
| [Estructura del código](https://gitea.laenre.net/hacklab/OASIS_MOBILE/wiki/Estructura) | Dónde vive cada fichero y por qué ahí |
|
|
| [Si algo va mal](https://gitea.laenre.net/hacklab/OASIS_MOBILE/wiki/Problemas) | Los fallos que han pasado de verdad |
|
|
| [Qué NO tiene](https://gitea.laenre.net/hacklab/OASIS_MOBILE/wiki/Limitaciones) | Lo que falta respecto al oficial, sin adornos |
|
|
|
|
---
|
|
|
|
## El proyecto original
|
|
|
|
Esta rama existe **gracias a** y **por encima de** el trabajo de epsylon. El código, la
|
|
arquitectura, los módulos y la red son suyos.
|
|
|
|
- **Código:** https://github.com/epsylon/oasis
|
|
- **Proyecto:** https://solarnethub.com
|
|
- **Wiki:** https://wiki.solarnethub.com/socialnet/overview
|
|
|
|
## Licencia
|
|
|
|
AGPL-3.0, la misma que el proyecto original.
|