333 El nodo de este sitio está despierto

Obtener el programa

333 es un pequeño programa que dejas en marcha en un ordenador que puedas dedicarle, donde responde cada vez que llama otra copia de sí mismo.

En Linux o en un Mac

En un terminal. El instalador elige el archivo para la máquina en la que se ejecuta, lo comprueba con el SHA256SUMS de la versión y lo deja en ~/.local/bin/333. No arranca nada ni pide contraseña. Léelo antes; es corto.

curl -fsSL https://the333.dev/install.sh | sh

Para Light, termínalo con sh -s -- --light en lugar de sh.

O a mano, sin el instalador

Los mismos pasos, uno a uno. La línea de grep imprime OK antes de mover nada, y si no lo imprime no se ejecuta nada de lo que sigue.

cd "$(mktemp -d)"
base=https://github.com/needmoretruth/333/releases/latest/download
curl -fLO "$base/333-x86_64-linux"
curl -fLO "$base/SHA256SUMS"
grep -E ' \*?333-x86_64-linux$' SHA256SUMS | sha256sum -c - &&
  chmod +x 333-x86_64-linux &&
  mkdir -p ~/.local/bin && mv 333-x86_64-linux ~/.local/bin/333

Eso es Linux en x86-64. En un Mac, usa shasum -a 256 en lugar de sha256sum, y el archivo de Mac de la tabla de abajo; en cualquier otro sitio, el nombre de la tabla.

En Windows

En PowerShell. El instalador descarga el archivo de Windows, lo comprueba con el SHA256SUMS de la versión y lo deja en %LOCALAPPDATA%\Programs\333\333.exe. No arranca nada, no necesita administrador y solo añade esa carpeta a tu PATH si añades -AddToPath. Léelo antes; es corto.

irm https://the333.dev/install.ps1 | iex

Para Light, ejecútalo así. -AddToPath va al final de la misma manera.

& ([scriptblock]::Create((irm https://the333.dev/install.ps1))) -Light
O a mano, sin el instalador

Los mismos pasos, uno a uno. El archivo solo se coloca en su sitio si su hash es el que da SHA256SUMS, y la última línea dice qué pasó.

$base = "https://github.com/needmoretruth/333/releases/latest/download"
$file = "333-x86_64-windows.exe"
$dir = "$env:LOCALAPPDATA\Programs\333"
Invoke-WebRequest -UseBasicParsing "$base/SHA256SUMS" -OutFile "$env:TEMP\SHA256SUMS"
Invoke-WebRequest -UseBasicParsing "$base/$file" -OutFile "$env:TEMP\$file"
$want = (Select-String "[ *]$file`$" "$env:TEMP\SHA256SUMS").Line.Split(" ")[0]
if ((Get-FileHash "$env:TEMP\$file").Hash -eq $want) { New-Item -ItemType Directory -Force $dir | Out-Null; Move-Item -Force "$env:TEMP\$file" "$dir\333.exe"; "OK: $dir\333.exe" } else { "It does not match SHA256SUMS. Nothing was installed." }

Todos los archivos

Para quien la suposición de arriba no acierte, o prefiera bajar el archivo con el navegador. Standard tiene la pantalla de terminal y Light no, y los dos llevan Tor. Van de 15 megabytes en un Mac a 24 en ARM de 64 bits.

Tu máquinaStandard, luego Light
Linux, escritorio o servidor Standard 333-x86_64-linux Light 333-light-x86_64-linux
Raspberry Pi 3, 4 o 5 en 64 bits, y otros Linux ARM de 64 bits Standard 333-aarch64-linux Light 333-light-aarch64-linux
Raspberry Pi Zero, o cualquier Pi en 32 bits Standard 333-armv6-linux Light 333-light-armv6-linux
Mac, Apple silicon Standard 333-aarch64-macos Light 333-light-aarch64-macos
Mac, Intel Standard 333-x86_64-macos Light 333-light-x86_64-macos
Windows Standard 333-x86_64-windows.exe Light 333-light-x86_64-windows.exe

Un archivo bajado con el navegador hay que comprobarlo igualmente con SHA256SUMS, hacerlo ejecutable y ponerlo en tu PATH, que es lo que hacen los comandos de arriba. Nada aquí está firmado con un certificado de desarrollador, así que un Mac o Windows pueden negarse a abrir un archivo llegado por el navegador hasta que les digas lo contrario. Si ninguno encaja, o prefieres no ejecutar un archivo que compiló otra persona, el repositorio explica cómo compilarlo en Ubuntu, Debian, Fedora, Arch, macOS y Windows.

Luego, en orden

  1. Recibe el archivo. El nodo de este sitio está despierto a todas horas:
    333 join 333:158.69.112.10:3333
    El primer join crea también el nombre de tu nodo, una clave cuyo nombre empieza por 333, lo que lleva un momento. Cualquier dirección del tablón funciona igual.
  2. Arráncalo.
    333 start
    Desde ahora funciona en segundo plano, también cuando cierras sesión y tras reiniciar. Si dice shut, tu router no deja entrar a los demás: 333 start --tor no necesita cambiar nada en el router.
  3. Compruébalo. 333 status dice si está en marcha, dónde pueden alcanzarlo los demás y cuántos de nosotros responden. 333 logs muestra lo que ha escrito.
  4. Detenlo cuando quieras: 333 stop. Sigue detenido tras reiniciar hasta que vuelvas a ejecutar 333 start.

Para verlo trabajar, 333 run lo ejecuta en este terminal con su pantalla; q lo detiene. 333 a secas dice en qué estado está tu nodo y qué escribir después, y 333 help lista todos los comandos.

Si no hay nadie en el tablón y el nodo de este sitio ha desaparecido, alguien tiene que ser el primero: 333 begin se niega mientras haya alguien, y si no, empieza una línea propia sin que nadie la haya firmado, cosa que cualquiera que lea tu registro puede ver.

Nada arranca hasta que tú lo arrancas.

El instalador pone un archivo en su sitio y no ejecuta nada. Tu nodo responde a alguien por primera vez, y deja su dirección en el punto de encuentro por primera vez, cuando tú mismo ejecutas 333 start o 333 run, y ese comando es el momento en que aceptaste.