Telegram Amiga alpha 0.0.8 è disponibile dal 31 luglio 2026 per AmigaOS 3.x, AmigaOS 4.x, MorphOS, AROS i386 e AROS x86_64. È la release più corposa del progetto finora: il trasferimento file passa da una funzione affidabile ma ancora invasiva a un percorso realmente utilizzabile mentre si continua a chattare.
La differenza pratica è semplice da capire: durante un upload o un download ora puoi scrivere, cambiare conversazione e ricevere messaggi. Sotto questa apparente normalità ci sono una seconda sessione MTProto dedicata ai file, chunk pipelined, fallback automatico al percorso sincrono, gestione a piccoli passi nel main loop e una lunga serie di correzioni che toccano GUI, multi-DC, packaging e sistemi AmiKit/AfA_OS.
Il progetto resta un client MTProto nativo scritto in C, con GUI Intuition/GadTools e TUI sullo stesso motore. Non è Telegram Desktop ricompilato e non è un wrapper web: è codice che prova a portare chat, ricerca, file e stato di sessione su cinque piattaforme Amiga-family con ABI, runtime e limiti molto diversi.
Trasferimenti 2.0: la GUI non viene più sequestrata
La novità centrale è il modello non bloccante dei trasferimenti. Nella 0.0.7 il file sharing era già diventato robusto, con streaming, percentuale live, retry e annullamento, ma la finestra restava impegnata fino alla fine dell’operazione. La 0.0.8 separa il lavoro di trasferimento dal ritmo della GUI: a ogni giro dell’event loop viene mosso un chunk, poi il client torna a gestire input, disegno e messaggi.
Il risultato non è soltanto un miglioramento estetico. Un client Amiga che continua a ricevere eventi mentre il disco e la rete lavorano è molto meno vicino a una demo bloccante e molto più vicino a uno strumento quotidiano. Puoi cambiare chat senza interrompere il trasferimento, seguire una conversazione e lasciare che l’operazione prosegua in background. Esc o il close gadget annullano il trasferimento; un secondo close chiude il programma.
Seconda sessione MTProto e pipeline dei chunk
Upload e download usano ora una seconda sessione MTProto dedicata. La connessione della chat viva non viene più usata come tubo condiviso per messaggi e file: questa separazione riduce l’accoppiamento tra il flusso interattivo e quello più pesante del trasferimento.
Per i download, la richiesta del chunk successivo può partire mentre quello corrente sta ancora arrivando. È una pipeline semplice ma importante: su una tratta lenta o distante, il tempo di andata e ritorno non viene pagato interamente tra un chunk e l’altro. Se la pipeline incontra un problema, il client degrada automaticamente al percorso sincrono già collaudato e ritenta il chunk senza trasformare un’ottimizzazione in un nuovo punto singolo di rottura.
La barra di stato mostra anche la velocità media accanto alla percentuale. La scrittura usa buffer più grandi, così il disco viene toccato in blocchi meno frequenti; su un Amiga con storage lento o su un 030 non è un dettaglio puramente teorico. Durante un trasferimento il polling pesante viene inoltre rallentato, mentre il drenaggio leggero degli aggiornamenti continua a tenere viva la chat.
Multi-DC: file e avatar non restano più miniature sfocate
Telegram può ospitare un documento o una foto profilo su un data center diverso da quello della sessione principale. La 0.0.8 aggiunge il percorso per scaricare documenti ospitati su un altro DC, con chiave per-DC, handshake iniziale e cache locale in data/telegram-auth-dc.bin. Viene gestito anche il caso FILE_MIGRATE durante il trasferimento.
La stessa infrastruttura viene usata per gli avatar fotografici su DC esterni: non restano più come anteprime sfocate soltanto perché il file originale vive altrove. È un lavoro poco appariscente nell’elenco delle feature, ma è proprio il genere di dettaglio che separa un client “sa parlare con Telegram” da un client che gestisce davvero la topologia del servizio.
Restano fuori alcuni file serviti dalla CDN di Telegram, soprattutto certi download di grandi canali pubblici. Il README aggiornato non li nasconde più dietro una promessa generica: il percorso multi-DC è arrivato, la CDN è ancora un limite dichiarato.
Ricerca locale più utile e chat curate dall’utente
La ricerca nella sidebar ora filtra i dialoghi mentre si digita. Prima cerca nei propri dialoghi, quindi può ritrovare una chat rimossa dalla lista; la ricerca online resta disponibile per scoprire peer che non sono già presenti. Una chat privata o un gruppo senza username pubblico può così tornare visibile quando l’utente lo cerca, senza obbligare il client a confondere “rimosso dalla mia lista” con “inesistente”.
La ricerca online esplora inoltre l’elenco completo dei dialoghi anche partendo da una casella vuota. Il comando Reload chat list forza un nuovo fetch paginato quando serve: è utile per account vecchi, per liste ampie e per il caso in cui il bootstrap iniziale avesse lasciato soltanto pochi dialoghi. All’avvio successivo il client non rifà inutilmente il fetch completo ogni volta.
La curation locale resta rispettata: le chat rimosse rimangono nascoste attraverso reload e riavvii, finché non vengono riaperte dalla ricerca; le chat archiviate vengono escluse dalla lista principale. Non è ancora una gestione completa dell’archivio Telegram, ma è un comportamento molto più prevedibile per chi usa la sidebar come spazio di lavoro e non come dump integrale del proprio account.
Drag-and-drop, drawer di download e link cliccabili
La GUI accetta il trascinamento di un file dal Workbench direttamente sulla finestra della chat aperta. Il nome viene mostrato appena il drop arriva, quindi l’utente non deve aspettare la fine dell’upload per capire quale file è stato preso in carico. Il percorso condivide il pump non bloccante, la percentuale e l’annullamento dei trasferimenti normali.
La destinazione dei download non è più una costante rigida. La voce Download drawer… nel menu Telegram apre un requester standard e il percorso scelto viene ricordato nella configurazione. Il default resta downloads, ma si può scegliere una drawer RAM: per una prova rapida o per un sistema con disco lento la differenza può essere concreta. La preferenza viene salvata in data/telegram-downloads.txt, modificabile anche a mano.
Gli URL nei messaggi vengono riconosciuti e disegnati in blu. Un clic apre il link tramite il meccanismo previsto dalla piattaforma; su sistemi che non dispongono di un percorso browser viene copiato negli appunti. Anche gli indirizzi molto brevi ora diventano cliccabili, mentre underscore e backtick non spezzano più il testo disegnato né lasciano il resto della bolla in corsivo.
AfA_OS, resize e il problema del primo paint
Una parte significativa della release nasce da un problema che non si vede in una demo moderna: su AmiKit con AfA_OS 4.8, Text() può congelarsi quando prova a disegnare in un RastPort off-screen senza layer. La GUI usa un doppio buffer per evitare il flicker; proprio quel buffer diventa il punto in cui l’implementazione AfA non si comporta come il percorso Intuition classico.
Quando AfA viene identificato, Telegram Amiga usa ora il testo bitmap tramite BltTemplate(), con metriche del font coerenti per layout e caret. La digitazione aggiorna soltanto la striscia di input invece di ridisegnare la finestra intera. Gli altri sistemi mantengono il percorso nativo Text(). La correzione specifica ha portato con sé irrobustimenti condivisi: buffer off-screen, resize accorpato, attesa del blitter prima del rilascio, ridisegno mirato del composer e refresh finale del frame Intuition.
Questo è un buon esempio di lavoro che non produce una voce vistosa nel menu ma migliora l’intero client. Anche su una macchina non-AfA, la GUI passa da una sequenza di resize e repaint più fragile a una gestione più ordinata: gli eventi intermedi vengono accorpati e si ricostruisce il buffer una volta raggiunta la dimensione finale.
Durante la diagnosi è stato inoltre isolato un problema esterno al client: icon.library 51.4.533 inclusa in alcune installazioni AmiKit può corrompere SysBase con Directory Opus e causare crash anche senza Telegram in esecuzione. Non va confuso con il freeze AfA della GUI: sono due problemi distinti. Per il primo serve correggere la libreria, per il secondo interviene il workaround della 0.0.8.
GUI e testo: piccoli bug, conseguenze grandi
La release corregge una serie di casi che diventano importanti proprio quando il client smette di essere una prova occasionale. Il popup del tasto destro viene dimensionato in base alle etichette reali e al font della piattaforma; il right-click fuori dalla finestra non lascia più il menu bar intrappolato; il doppio clic su un risultato di ricerca non apre una seconda chat sbagliata dopo che il primo clic ha già sostituito la sidebar.
Il paste di file testuali conserva CR e CR/LF invece di appiattire tutto in un paragrafo, mentre i testi lunghi con caratteri accentati non vengono più troncati o corrotti da un buffer UTF-8 rimasto troppo piccolo. È il tipo di bug che non entra nelle immagini promozionali, ma che un utente italiano nota al primo messaggio copiato da una documentazione.
Anche il calcolo della percentuale viene corretto per file oltre circa 41 MiB: un overflow a 32 bit poteva riportare il valore a zero nel mezzo del trasferimento, pur lasciando il file integro. Il fatto che il dato visualizzato fosse sbagliato non rendeva il trasferimento meno reale, ma rendeva la UI poco affidabile proprio nel momento in cui l’utente aveva bisogno di capire quanto mancava.
Robustezza MTProto e packaging
Se l’orologio di sistema torna indietro subito dopo la connessione, il budget di una query non scade più istantaneamente: il timeout viene ri-originato. Un vecchio risultato RPC rimasto sullo stream dopo una query abortita diventa invece un soft-fail pulito con reconnect, evitando uno stato ambiguo su stack bsdsocket lenti.
Su AmigaOS 4 porte e IO request passano dalla famiglia nativa AllocSysObject/FreeSysObject. Il packaging verifica ora l’architettura del binario dentro ogni archivio, prevenendo il ritorno del problema 0.0.7 in cui un archivio Aminet OS3 aveva ricevuto per collisione di nomi il binario OS4; quel pacchetto è stato ripubblicato come 0.0.7a, mentre gli archivi GitHub non erano coinvolti.
La 0.0.8 documenta anche l’opzione sperimentale M68K_CPU=68000 per build plain 68000, non inclusa nei pacchetti binari pubblici che restano 68020+. Ogni archivio include il CHANGELOG e il controllo della versione evita di distribuire un file che dichiari un’architettura diversa da quella contenuta.
Download ufficiali: GitHub e Aminet
Gli archivi GitHub contengono entrambi i client, icone, manuali IT/EN, il file API pubblico e il CHANGELOG. Non contengono sessioni Telegram, token personali o altri file privati. Aminet offre i pacchetti 0.0.8 nelle cinque pagine ufficiali corrispondenti.
- AmigaOS 3.x alpha 0.0.8, build m68k per 68020 o superiore; pacchetto Aminet m68k;
- AmigaOS 4.x alpha 0.0.8, build PowerPC; pacchetto Aminet AmigaOS 4;
- MorphOS alpha 0.0.8, build PowerPC; pacchetto Aminet MorphOS;
- AROS i386 ABIv0 alpha 0.0.8; pacchetto Aminet AROS i386;
- AROS x86_64 alpha 0.0.8; pacchetto Aminet AROS x86_64.
Il repository GitHub ufficiale resta il punto di partenza per sorgenti, issue, documentazione e stato corrente. Il percorso completo è raccolto nel diario di sviluppo Telegram Amiga; per la versione inglese c’è il development diary.
Cosa cambia davvero
La 0.0.8 non aggiunge soltanto feature alla lista. Cambia il rapporto tra client e macchina: il trasferimento non sequestra più la GUI, la sessione file non sporca quella della chat, il download conosce i data center esterni e la ricerca rispetta la curation locale dell’utente. Sono scelte architetturali che rendono il programma più usabile anche quando l’hardware non concede RAM, CPU o I/O in abbondanza.
Il progetto è ancora alpha e non supporta inline photo rendering, reaction, gestione completa dei contatti o forwarding verso un’altra chat. I file della CDN Telegram restano un limite. Ma il confine è più interessante di prima: Telegram Amiga non sta più soltanto dimostrando che un Amiga può collegarsi a Telegram; sta costruendo, una funzione difficile alla volta, un client che può restare dentro il flusso operativo senza chiedere all’utente di fermare tutto.
In breve
- Trasferimenti non bloccanti: puoi chattare, cambiare conversazione e ricevere messaggi durante upload e download.
- Seconda sessione MTProto per i file, chunk pipelined, fallback sincrono, velocità media, cancel e buffer di scrittura più grandi.
- Download di documenti e avatar da data center esterni, con chiavi per-DC, handshake e gestione di
FILE_MIGRATE. - Ricerca locale mentre si digita, ricerca dei propri dialoghi prima del peer search, reload paginato e chat nascoste persistenti.
- Drag-and-drop dal Workbench, drawer di download configurabile, URL cliccabili e menu coerenti con i colori dello schermo.
- Workaround AfA_OS per il primo paint, resize accorpato, correzioni di testo UTF-8, paste, popup, percentuali e reconnect MTProto.
- Pacchetti ufficiali 0.0.8 per AmigaOS 3.x, AmigaOS 4.x, MorphOS, AROS i386 e AROS x86_64 su GitHub e Aminet.
Fonti e materiali
- Release GitHub AmigaOS 3.x alpha 0.0.8
- Release GitHub AmigaOS 4.x alpha 0.0.8
- Release GitHub MorphOS alpha 0.0.8
- Release GitHub AROS i386 alpha 0.0.8
- Release GitHub AROS x86_64 alpha 0.0.8
- Aminet TelegramAmiga 0.0.8
- Aminet TelegramAmiga-OS4 0.0.8
- Aminet TelegramAmiga-MOS 0.0.8
- Aminet TelegramAmiga-AROS 0.0.8
- Aminet TelegramAmiga-AROS64 0.0.8
- Repository ufficiale Telegram Amiga
- Diario di sviluppo Telegram Amiga