Código abierto, AGPL-3.0
Restow es un repositorio, una imagen de contenedor y una versión.
Todo lo que está fuera del directorio ee/ es AGPL-3.0 con
la Restow Module Exception, un permiso adicional que permite combinar
el núcleo con módulos sea cual sea la licencia de estos. Las
funciones de Business y Service Provider viven en ee/,
bajo la Restow Enterprise License, con el código visible: se puede
leer, pero usar una función de edición en producción requiere una
clave de licencia.
El núcleo de Restow tiene licencia AGPL-3.0: software de uso, inspección y modificación libres, incluida la edición Community, que es gratuita para una organización, sin límite de buzones y sin ninguna clave de licencia. El código AGPL-3.0 ya publicado no se puede retirar, pase lo que pase después con este proyecto.
Qué es público hoy
El código fuente completo, incluido el directorio ee/,
es público en
GitHub,
donde se publica cada versión. La versión 0.1.0, la
primera versión
pública,
ya está disponible como beta: pruébela antes de confiar en ella y
mantenga una copia de seguridad independiente en paralelo. Véase,
en inglés,
cómo se construye Restow para
el relato completo del proceso de desarrollo por el que pasa este
código.
Por qué AGPL-3.0, en concreto
AGPL cierra el resquicio que la GPL normal deja abierto para el software en red: un proveedor que ejecuta un Restow modificado como servicio tiene que publicar también esas modificaciones, no solo las instalaciones de las que entrega físicamente una copia a alguien. Para una herramienta de copia de seguridad y archivo autoalojada, dirigida en parte a proveedores de servicios que la operan para sus clientes, eso importa más de lo que importaría en una aplicación de escritorio.
La Restow Module Exception (LICENSE-EXCEPTION.md en el
repositorio) es un permiso adicional según la sección 7 de la AGPL:
el núcleo puede combinarse con módulos, y el resultado distribuirse,
sea cual sea la licencia de los módulos. Los archivos de
ee/ son módulos de este tipo, y también lo es cualquier
otra obra que hable con el núcleo solo a través de la interfaz de
extensión definida en ese archivo.
Un repositorio, dos licencias
No hay un producto de código cerrado aparte. El código de
ee/ está bajo la Restow Enterprise License
(ee/LICENSE en el repositorio). Puede leerlo,
ejecutarlo, copiarlo sin modificar y modificarlo para desarrollo y
pruebas. Usar una función de edición en producción requiere una
clave de licencia válida para esa edición, y la comprobación de
licencia no se puede eliminar ni eludir. Sin clave las funciones
permanecen bloqueadas: una entrada de menú bloqueada sigue visible,
en gris, y lleva a los ajustes de licencia, sin banners ni ventanas
emergentes.
Qué añaden realmente las ediciones de pago, y qué no
Business y Service Provider desbloquean lo que vive en
ee/: las retenciones legales, el receptor SMTP de
journaling, las ejecuciones de borrado del archivo (retención
obligatoria), el visor del registro de auditoría (búsqueda,
detalles, verificación de la cadena), el inicio de sesión con
Microsoft (Entra ID) para usuarios finales, el equipo de proveedor
(roles, ámbitos de clientes), los informes resumen programados, la
API de proveedor entre clientes y la vista de proveedor del panel
(matriz de clientes, alertas). Todo ello está siempre presente en la
imagen, y la clave de licencia decide en tiempo de ejecución qué
parte está activa. No todo está terminado: en este sitio el visor del
registro de auditoría sigue en desarrollo y el inicio de sesión con
Microsoft para usuarios finales todavía no está activado, véase la
hoja de ruta. La opción de marca
blanca para Service Providers está prevista, no construida.
Deliberadamente en el núcleo, en todas las ediciones: el formato del archivo (legible sin servidor), el esquema de la base de datos, los ajustes de retención del archivo y el registro de la auditoría. Cada lectura y cada restauración se escribe en todas las ediciones en el registro de auditoría con cadena de hashes; solo verlo, buscar en él y verificarlo es de Business y Service Provider.
La clave de licencia es un mecanismo de juego limpio, no DRM: se
verifica sin conexión frente a una clave Ed25519 firmada, no llama a
casa, no hace caducar su acceso a una versión que ya tiene y nunca
limita la restauración. La restauración nunca está limitada por
edición, en ninguna versión. Véase
precios para las condiciones exactas. Si
el desarrollo terminara alguna vez, el proyecto se ha comprometido a
anunciarlo con al menos doce meses de antelación y a publicar
entonces ee/ bajo la AGPL-3.0; las instalaciones siguen
funcionando sin clave.
Contribuir
Una contribución necesita dos cosas: aceptar el Contributor License
Agreement (una comprobación automática en cada pull request lo pide
una vez) y una firma de conformidad con el Developer Certificate of
Origin en cada commit (git commit -s). Los detalles
están en
CONTRIBUTING.md
en el repositorio.
Recuperar sus datos sin Restow en absoluto
El código abierto va más allá del código de la aplicación hasta los propios datos: el formato del almacén de bloques está abierto y documentado, y una pequeña herramienta independiente restaura a partir de él incluso sin ningún servidor Restow en marcha, de modo que código abierto aquí también significa que puede recuperar su propia copia de seguridad incluso en el peor de los casos, no solo leer el código. Véase, en inglés, costes de salida y dependencia del proveedor para entender por qué esa garantía concreta merece la pena tenerla por escrito.
Preguntas frecuentes
¿Es Restow realmente de código abierto, o un «open core» con un nivel gratuito limitado?
Ambas partes están en un mismo repositorio público, y la etiqueta honesta es «open core». El núcleo es AGPL-3.0 con la Restow Module Exception, y la edición Community gratuita ya incluye copia de seguridad completa de Microsoft 365 e IMAP, copia de servidores y equipos, importación y exportación de correo, restauración no destructiva y pruebas semanales de restauración, sin límite de buzones y sin necesidad de clave de licencia. Las funciones de Business y Service Provider (por ejemplo las retenciones legales, el receptor de journaling, la retención obligatoria, el visor del registro de auditoría y la API de proveedor entre clientes) viven en ee/ bajo la Restow Enterprise License, con el código visible, no bajo la AGPL: el código se puede leer, pero usarlas en producción requiere una clave de licencia. Es la misma base de código y la misma imagen, no una versión reducida de la misma función.
¿Dónde está el código?
En GitHub, github.com/restow-backup/restow: todo lo que está fuera de ee/ bajo la AGPL-3.0 con la Restow Module Exception, y ee/ bajo la Restow Enterprise License. Cada versión se publica allí, empezando por la 0.1.0, la primera versión pública.
¿Es la clave de licencia una forma de DRM?
No. No llama a casa, no hace caducar su acceso, y nunca limita la restauración: la restauración nunca está limitada por edición ni licencia en ninguna versión de Restow. Es un mecanismo de juego limpio que desbloquea las funciones de Business/Service Provider una sola vez, sin conexión, frente a una clave Ed25519 firmada; nada en ella puede desactivar el software de forma remota.
¿Puedo leer, ejecutar y modificar el código de ee/?
Puede leerlo, ejecutarlo y copiarlo sin modificar, y puede modificarlo para desarrollo y pruebas. Sin clave de licencia las funciones de edición permanecen bloqueadas. Usar una función de edición en producción, también una modificada, requiere una clave de licencia válida para esa edición, y la comprobación de licencia no se puede eliminar ni eludir.
¿Qué necesita una contribución?
Aceptar el Contributor License Agreement (una comprobación automática en cada pull request lo solicita) y una firma de conformidad con el Developer Certificate of Origin en cada commit (git commit -s). CONTRIBUTING.md en el repositorio tiene los detalles.