grappa

Il tuo, tutto tuo

Perché

grappa è un programma solo che si porta dietro i suoi client: lo installi e ti ritrovi il bouncer, l'app web cicchetto che serve lui, e il client da terminale shottino, tutti sulla stessa superficie REST. Lo scrollback resta sul tuo disco, i tuoi utenti sono i tuoi, e le reti IRC a cui ti colleghi sono affari tuoi. irc.sindro.me è semplicemente l'istanza che tengo su io; nel codice non c'è niente che dia per scontato che sia l'unica. C'è già chi si tiene la sua.

Installazione

Repository firmati, così gli aggiornamenti arrivano col resto del sistema.

curl -fsSL https://grappa.chat/debian/grappa-archive-keyring.gpg \
  | sudo tee /usr/share/keyrings/grappa-archive-keyring.gpg >/dev/null

echo "deb [signed-by=/usr/share/keyrings/grappa-archive-keyring.gpg] \
https://grappa.chat/debian stable main" \
  | sudo tee /etc/apt/sources.list.d/grappa.list

sudo apt update && sudo apt install grappa

shottino sta nello stesso repository.

sudo rpm --import https://grappa.chat/rpm/grappa-archive-keyring.asc

sudo tee /etc/yum.repos.d/grappa.repo <<'EOF'
[grappa]
name=grappa
baseurl=https://grappa.chat/rpm/
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://grappa.chat/rpm/grappa-archive-keyring.asc
EOF

sudo dnf install grappa
curl -fsSL https://grappa.chat/arch/grappa-archive-keyring.asc \
  | sudo pacman-key --add -
sudo pacman-key --lsign-key A11BAC8E72FBCFCE

sudo tee -a /etc/pacman.conf <<'EOF'

[grappa]
SigLevel = Required DatabaseRequired
Server = https://grappa.chat/arch/$arch
EOF

sudo pacman -Sy grappa

Solo x86_64: Arch non ha una porta ARM ufficiale.

curl -fsSL https://raw.githubusercontent.com/vjt/grappa-irc/main/infra/docker/get.sh | bash

Immagine multi-arch (amd64 + arm64) su ghcr.io/vjt/grappa. Se non ti va di infilare uno script dentro una shell, copiati compose.release.yaml. Aggiungi -s -- update per aggiornare una macchina già su.

La chiave di firma

Tutti e tre i repository sono firmati con una chiave sola, che sta sulla macchina che li pubblica e da nessun'altra parte — non su GitHub, non in un secret della CI. I pacchetti si costruiscono in pubblico; l'unica cosa che non è pubblica è la firma.

BC9B A2A8 A677 FCA8 6A36  A0DC A11B AC8E 72FB CFCE
grappa.chat archive signing key <[email protected]>

Pubblicata accanto ai pacchetti come .asc e .gpg. Curioso di come ci arrivano, i pacchetti? È la pipeline →

Architetture

Oggi i repository portano x86_64. L'immagine container è già multi-arch (amd64 + arm64); i .deb e .rpm arm64 sono il prossimo passo. Il repository pacman resta x86_64: Arch non ha una porta ARM ufficiale, e Arch Linux ARM è un progetto a parte.

Dai sorgenti, o altrove

È tutto su GitHub, MIT, con un installer per una macchina nuda e uno per Kubernetes. il codice → · INSTALL.md → · come si manda avanti →

Vuoi solo chattare?

Niente da installare: entri con un nick sulla mia istanza.

Provalo ora →