333 Le nœud de ce site est éveillé

Prendre le programme

333 est un petit programme que vous laissez tourner sur un ordinateur dont vous pouvez vous passer, où il répond chaque fois qu’une autre copie de lui-même frappe.

Sous Linux ou sur un Mac

Dans un terminal. L’installateur choisit le fichier pour la machine sur laquelle il tourne, le vérifie avec le SHA256SUMS de la version et le place dans ~/.local/bin/333. Il ne démarre rien et ne demande aucun mot de passe. Lisez-le d’abord ; il est court.

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

Pour Light, terminez par sh -s -- --light au lieu de sh.

Ou à la main, sans l’installateur

Les mêmes étapes, une à une. La ligne grep affiche OK avant que rien ne bouge, et rien après elle ne s’exécute si ce n’est pas le cas.

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

Ceci est pour Linux sur x86-64. Sur un Mac, utilisez shasum -a 256 au lieu de sha256sum, et le fichier Mac du tableau ci-dessous ; ailleurs, le nom donné dans le tableau.

Sous Windows

Dans PowerShell. L’installateur récupère le fichier Windows, le vérifie avec le SHA256SUMS de la version et le place dans %LOCALAPPDATA%\Programs\333\333.exe. Il ne démarre rien, ne demande pas d’administrateur et n’ajoute ce dossier à votre PATH que si vous ajoutez -AddToPath. Lisez-le d’abord ; il est court.

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

Pour Light, lancez-le plutôt ainsi. -AddToPath se met à la fin de la même façon.

& ([scriptblock]::Create((irm https://the333.dev/install.ps1))) -Light
Ou à la main, sans l’installateur

Les mêmes étapes, une à une. Le fichier n’est mis en place que si son hash est celui que donne SHA256SUMS, et la dernière ligne dit ce qui s’est passé.

$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." }

Tous les fichiers

Pour qui la supposition ci-dessus se trompe, ou qui préfère prendre le fichier par le navigateur. Standard a l’écran de terminal, Light non, et les deux embarquent Tor. Ils vont de 15 mégaoctets sur Mac à 24 sur ARM 64 bits.

Votre machineStandard, puis Light
Linux, poste de travail ou serveur Standard 333-x86_64-linux Light 333-light-x86_64-linux
Raspberry Pi 3, 4 ou 5 en 64 bits, et autres Linux ARM 64 bits Standard 333-aarch64-linux Light 333-light-aarch64-linux
Raspberry Pi Zero, ou tout 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 fichier pris par le navigateur doit quand même être vérifié avec SHA256SUMS, rendu exécutable et placé dans votre PATH, ce que font les commandes ci-dessus. Rien ici n’est signé par un certificat de développeur : un Mac ou Windows peut donc refuser d’ouvrir un fichier venu du navigateur tant que vous ne lui dites pas le contraire. Si aucun ne convient, ou si vous préférez ne pas exécuter un fichier compilé par quelqu’un d’autre, le dépôt explique comment le compiler sous Ubuntu, Debian, Fedora, Arch, macOS et Windows.

Ensuite, dans l’ordre

  1. Recevez le fichier. Le nœud de ce site est éveillé à toute heure :
    333 join 333:158.69.112.10:3333
    Le premier join crée aussi le nom de votre nœud, une clé dont le nom commence par 333, ce qui prend un instant. N’importe quelle adresse du tableau fonctionne de la même façon.
  2. Démarrez-le.
    333 start
    Il tourne désormais en arrière-plan, après votre déconnexion et après un redémarrage. S’il affiche shut, votre routeur empêche les autres d’entrer : 333 start --tor ne demande aucun changement de routeur.
  3. Vérifiez-le. 333 status dit s’il tourne, où les autres peuvent le joindre et combien d’entre nous répondent. 333 logs montre ce qu’il a écrit.
  4. Arrêtez-le quand vous voulez : 333 stop. Il reste arrêté après un redémarrage jusqu’à ce que vous relanciez 333 start.

Pour le voir travailler, 333 run le fait tourner dans ce terminal avec son écran ; q l’arrête. 333 seul dit dans quel état est votre nœud et quoi taper ensuite, et 333 help liste toutes les commandes.

S’il n’y a personne sur le tableau et que le nœud de ce site a disparu, quelqu’un doit être le premier : 333 begin refuse tant qu’il y a quelqu’un, et sinon commence une lignée à vous, que personne n’a signée, ce que quiconque lit votre registre peut voir.

Rien ne démarre avant que vous ne le démarriez.

L’installateur met un fichier en place et n’exécute rien. Votre nœud répond pour la première fois à quelqu’un, et laisse pour la première fois son adresse au point de rencontre, quand vous lancez vous-même 333 start ou 333 run, et cette commande est le moment où vous avez accepté.