Perché il codice di tTerm è aperto, anche se arrivano i piani a pagamento
Tutto il codice di tTerm ora è sotto licenza AGPL v3 invece che MIT, e presto arriveranno i piani a pagamento. Ecco perché una cosa non ostacola l'altra, e perché abbiamo aperto anche il server.
Cosa è cambiato
Dall'11 ottobre tutto il codice di tTerm esce con licenza AGPL v3: tTerm Web per intero, sia la pagina sia il server, l'agente per i computer, il bot Telegram e questo sito. tTerm per il tuo computer, che stiamo costruendo ora, è sotto AGPL fin dalla prima versione. Prima il bot, l'agente e il sito uscivano con licenza MIT. Le versioni già pubblicate con MIT la mantengono: una licenza non si può revocare a posteriori. L'AGPL vale per tutto ciò che è nuovo.
Perché è aperto anche il server
tTerm si collega alle tue macchine. Su un server entra come utente tterm con sudo, cioè ottiene i permessi di root. A un servizio con un accesso del genere non si dovrebbe credere sulla parola, perciò è aperto tutto ciò che lo riguarda: il core, il programma separato che firma i certificati, l'installer e l'agente.
Ogni promessa della nostra home page si può verificare nel codice. Un certificato vive due minuti e vale per un solo server. Le chiavi della CA stanno in un processo separato, senza rete. L'installer aggiunge una riga al file authorized_keys e non tocca sshd_config. Il server su app.tterm.net si aggiorna direttamente dal repository pubblico, quindi quello che c'è su GitHub è esattamente il codice in esecuzione.
Spesso è aperta solo l'app, mentre il server resta chiuso. Per un terminale con root sulle macchine di altre persone, a noi sembra sbagliato.
Perché AGPL e non MIT
La licenza MIT permette quasi tutto, anche prendere il codice, migliorarlo e farlo girare come servizio chiuso. Chi collega i propri server a un servizio del genere non ha poi modo di sapere a chi ha dato root, e come.
L'AGPL non lo permette: chi fa girare una copia modificata di tTerm come servizio per altri deve aprirne il codice ai propri utenti. Qualsiasi servizio costruito sul nostro codice resta trasparente quanto il nostro.
Niente di tutto questo ti vincola. Collega le tue macchine, lavora, installa tTerm su un tuo server: la licenza entra in gioco solo se distribuisci tTerm ad altre persone o fai girare per loro una versione modificata come servizio.
E allora perché pagare
Pagherai il servizio, non l'accesso al codice. Per far funzionare tTerm ogni giorno servono server nell'UE e copie del database, l'email, l'assistenza e qualcuno che tenga d'occhio gli aggiornamenti. È lì che andranno i soldi dei piani a pagamento, e dei piani ti parleremo in anticipo. Finché tTerm è in beta, è gratis per tutti.
Puoi far girare una tua copia di tTerm: l'AGPL lo consente. Ma alla maggior parte delle persone serve un terminale, non un altro servizio di cui curare da sé hosting, aggiornamenti e backup.
Anche altri progetti aperti vivono così. Nel 2020 Plausible ha sostituito la licenza MIT con l'AGPL, perché le aziende non costruissero sul suo codice servizi concorrenti senza dare nulla in cambio. Nel 2021 Grafana ha lasciato Apache 2.0 per l'AGPL. Entrambi i progetti vendono una versione cloud del proprio codice aperto.
Dove si trova il codice
Tutto il codice di tTerm sta in un'unica organizzazione su GitHub: github.com/tterm-net. Ecco i suoi repository e a cosa serve ciascuno:
- tterm-web
tTerm Web, la pagina e il server: il core che tiene attivi i tuoi terminali, il programma separato che firma i certificati e gli installer per server e computer. - tterm-app
tTerm per il tuo computer: la stessa pagina in una finestra tutta sua, con le shell di quel computer. Il motore è scritto in Rust, e si parte da macOS. - tterm-agent
L'agente per i computer: collega un Mac o una macchina Linux a tTerm Web e al bot. Si connette da solo verso l'esterno e non apre porte. - tterm-telegram
Il bot Telegram da cui è nato tTerm. - site
Questo sito. - .github
La pagina dell'organizzazione su GitHub.
Gli installer sono brevi: leggili prima di eseguirli.
Prova tTerm Web
Accedi con la tua email: ricevi un codice, e da lì in poi sui tuoi dispositivi basta un codice breve. Il primo server si collega in un minuto.
Inizia gratis