Newer
Older
Sunfish / README.md
@Ivan Dominguez Ivan Dominguez 21 hours ago 4 KB 3.0

Sunfish

Servidor web y de ficheros ligero y portable. Comparte cualquier carpeta del ordenador por web, FTP y WebDAV a la vez, sin instalación y sin permisos de administrador.

Está pensado sobre todo para mover ficheros entre equipos actuales y máquinas antiguas (DOS, Windows 3.1 y 9x, Mac clásico). El servidor detecta el tipo de cliente y se adapta solo:

  • su navegador de directorios funciona en navegadores de los 90 y de texto;
  • ofrece nombres 8.3 a DOS y Windows 3.1;
  • maneja MacBinary y BinHex para no perder los resource forks de los ficheros de Mac.

Un Sunfish puede además explorar y copiar ficheros de otro Sunfish de la red. También sirve páginas web estáticas: si una carpeta tiene index.html, se muestra la página; si no, su contenido.

Estado: la versión 3 está en diseño (ver DOC/). El código que hay ahora en el repositorio es el de la 2.0, para Windows y .NET Framework.

Qué hará la versión 3

  • Shares: carpetas publicadas en una ruta (/, /fotos…). Cuando una ruta es más específica que otra, tiene prioridad.
  • Permisos por share: listado, subir, sobrescribir, renombrar, borrar, descargar como ZIP. Por defecto, solo lectura.
  • Usuarios con contraseña opcionales por share.
  • Web clásica sin JavaScript para navegadores antiguos y web moderna con arrastrar y soltar.
  • FTP con modo activo y pasivo, y juegos de caracteres antiguos (ISO-8859-1, MacRoman, CP437…).
  • WebDAV para montar los shares desde el Explorador, Finder o los gestores de ficheros de Linux.
  • Panel de administración web con contraseña y lista de direcciones permitidas (desactivado por defecto).
  • Código QR de cada dirección, para abrirla desde el móvil.
  • Importa la configuración de Sunfish 2.0 (sunfish2).
  • Dos programas:
    • Sunfish.exe, con ventana, para Windows;
    • sunfish-cli, con interfaz en la terminal, para Windows, Linux y macOS.
    Arrastra una carpeta sobre cualquiera de los dos y queda compartida al momento.

Importante: todo viaja sin cifrar, contraseñas incluidas. Úsalo solo en redes de confianza.

Compilar desde fuentes

Se compila en tu máquina con un solo comando. El script comprueba que tienes lo necesario (no instala nada; si falta algo, te dice qué y cómo instalarlo), descarga la última versión, compila y deja los ejecutables en la raíz del proyecto:

  • Windows: Sunfish.exe (con ventana) y sunfish-cli.exe (terminal).
  • Linux y macOS: sunfish-cli. Es nativo y no necesita .NET para ejecutarse.

Necesitas git y el SDK de .NET 10. Para sunfish-cli también un compilador nativo:

  • Windows: Visual Studio Build Tools con «Desarrollo para escritorio con C++»;
  • Linux: clang, zlib y un enlazador;
  • macOS: Xcode Command Line Tools.
irm https://raw.githubusercontent.com/XWolfOverride/Sunfish/main/build.ps1 | iex                # Windows
curl -fsSL https://raw.githubusercontent.com/XWolfOverride/Sunfish/main/build.sh | bash         # Linux y macOS

Crea la carpeta Sunfish/ en el directorio actual. Para actualizar a una nueva versión, vuelve a ejecutar el mismo comando (o ./build.sh / .\build.ps1 dentro de la carpeta). Para compilar un fork, define antes SUNFISH_REPO_URL.

Sunfish.exe sale autocontenido (~49 MB, no necesita nada instalado). Si ya tienes el .NET Desktop Runtime 10, define antes $env:SUNFISH_LIGHT = '1' y saldrá uno de ~0,5 MB.

Sunfish.exe se abre con doble clic desde donde esté. Para usar sunfish-cli desde cualquier terminal, instálalo en tu PATH:

# Windows (PowerShell, sin administrador); después reabre la terminal
mkdir $HOME\bin -Force; copy sunfish-cli.exe $HOME\bin
$p = [Environment]::GetEnvironmentVariable("Path","User"); [Environment]::SetEnvironmentVariable("Path","$p;$HOME\bin","User")
# Linux / macOS, solo para tu usuario
mkdir -p ~/.local/bin && install -m 755 sunfish-cli ~/.local/bin/
# para todos los usuarios
sudo install -m 755 sunfish-cli /usr/local/bin/

Ejecutar un script descargado requiere confiar en él: léelo antes o descárgalo y ejecútalo tú.

Documentación técnica

Para desarrolladores y agentes de IA: DOC/README.md.

Licencia

MIT. Copyright (c) 2007-2026 XWolfOverride.