Riprendersi le mail (e toglierle a Google): msgvault per ottimizzare, backuppare ed eliminare gmail

Prendere consapevolezza del proprio rapporto con tecnologia e piattaforme è altrettanto necessario quanto dover fare i conti col mondo finanziario che ci circonda. Anche questo è un percorso e i motivi possono essere i più variegati e svariati.

Una rassegna non esclusiva di alternative o motivi si trova in questi post: alternative a gmail, una puntata del substack Eleonora Caruso dedicata a salutare Gmail, Liberare il mio smartphone per liberare me stesso di Kenobit – a qualche click di distanza potete trovare il modo di leggerlo gratuitamente. Potrei andare avanti, ma succederà un'altra volta.

Visto però che, come si diceva, la cosa è un processo – ci sta che prima di droppare tutto e riaprire casa altrove vogliate fare pulizia o un backup. msgvault è un programma per fare il backup, fare pulizia e scoprire qualcosa di quello che avete fatto con Google in questi anni.

msgvault, in breve

msgvault è un software sviluppato da Wes McKinney. Wes è una superstar del mondo Python e della programmazione. Back in the days quando il lavoro di data analysist era la cosa più cool del mondo (prima dei bitcoin e prima dell'AI trade e di GPT etc), per analizzare dati probabilmente usavate Python come linguaggio di programmazione.

E per “fare le cose con i dati”, usavate pandas. Wes ha creato pandas. (Tra parentesi: c'è un libro di McKinney su pandas del 2014 o simili – aggiornato alle verisoni più recenti. Prima o poi sarà il momento di parlare anche di libri su strumenti e cose ganze, scritte da chi ha fatto quelle cose. Tipo il libro di Mechner su Prince of Persia. Tra le storie interessanti su pandas e come siamo arrivati ad averlo, open source e gratis, c'è un altro intreccio con la finanza (non solo personale). Quelli di [AQR avevano bisogno di qualcosa con cui fare le analisi dei dati}(https://pandas.pydata.org/about/).

Sul come e il perché sia nato msgvault, c'è un post dello stesso Wes

Da qui in poi vedremo come installare msgvault e cosa farci. In un ipotetico seguito e sviluppo (perchè è un processo, etc etc) possiamo vedere cosa fare coi backup (magari non volete backuppare un gigabyte di mail di linkedin) e dirci due cose su cosa si scopre rovistando in quella che, per una parte variabile, è una discreta componente della nostra spazzatura digitale.

Prima di procedere: Wes è diventato un fan dello sviluppo con l'AI e con gli agenti. Questa cosa potrebbe non piacervi troppo e, forse, potrebbe essere un motivo per NON usare il suo programma. Però, ecco, AI vs. piattaforme sempre abbastanza una situazione da karma is a bitch.

Installare msgvault

La prima cosa da fare è aprire la pagina github del progetto e seguire le istruzioni.

Ci sono però un po' di cose che sono diverse se vi prendete una versione in italiano. E alcuni step che forse sono meno ovvii del previsto. La parte più lunga di tutte è forse quella dell'API key da Google Cloud. Qui c'è un resoconto di quello che ho fatto e qualche query per sistemare il risultato.

Istruzioni per macOS perché era quello che avevo. Per il giro Windows fatemi sapere appena qualcuno arriva in fondo.

  1. installiamo il tutto da terminale (cmd + spazio) terminale % curl -fsSL https://msgvault.io/install.sh | bash

Se tutto va bene dovrebbe succedere questo

Installing msgvault...

Platform: ...
Install directory: dove volete installare

Fetching latest release...
Found version: v0.6.4 # questa potrebbe essere più nuova
Downloading msgvault_0.6.4_darwin_arm64.tar.gz...
Checksum verified
Extracting...
Installed from GitHub release

Installation complete!

Add this to your shell profile:
  export PATH="$PATH:/Users/NomeUtente/.local/bin"

Get started:
  msgvault init-db
  msgvault add-account you@gmail.com
  msgvault sync-full you@gmail.com --limit 100
  msgvault tui

In teoria è tutto pronto, si possono leggere già i comandi per iniziare a far funzionare il programma negli ultimi passaggi. Ma prima c'è da trovare le credenziali di autenticazione alla mail di google (in pratica il programma agirà per voi e copierà e cancellerà un sacco di roba, quindi serve un modo per convincere Google che avete tutto il diritto di fare operazioni automatizzate sulla vostra mail).

Credenziali Google Cloud OAuth

Per poter “fare cose” in automatico con la nostra mail ci servono delle credenziali. Questo richiede un paio di steps. Il primo è prendersi dieci minuti per trovare le credenziali di Google Cloud OAuth. Da capo, ci pensa Wes a dirci come andare a prenderle.

Come tutte le interfacce web di “cose cloud”, le schermate sono tremende. Ok, il “come tutte” forse è esagerato. Ho avuto a che fare solo con AWS ed è abbastanza tremendo. E siamo a 2/3 dei grandi cloud provider. Pazzesco come è tutto fancy e sbirluccicoso quando si tratta di cattura l'utente e succhiare attenzione. Invece se devi usare quella roba per lavorare allora, boh, è tutto un macello. Chi fa “cose coi cloud” per lavoro potrebbe dirmi che in quei casi si lavora da terminale. O che c'è – inserite nome di qualcosa per fare Infrastructure-as-code. Potrei anche essere d'accordo. Però allora perché se tutto è bello da terminale in AWS&Co si spende per mantenere in piedi quella roba? (Ma stiamo divagando...).

In pratica vi tocca seguire gli steps e succede questo (seguono annotazioni sui vari step della guida di Wes). Se dovessi rifare tutto mi sa che dovrei fare qualche screenshot.

Step 1

  1. si finisce qui
  2. seleziona progetto –> Nuovo progetto
  3. creiamo il progetto prendendo nota del suo ID*

Step 2

  1. cliccare sul progetto nuovo e andare su API & Servizi e poi Libreria
  2. cercare Gmail API e poi
  3. click su Abilita

Step 3

Andare su Schermata Consenso OAuth e iniziare configurazione. Seguire i requisiti scegliere esterno (steps 2-4) I test users sono nascosti in Schermata consenso Oauth –> Pubblico

Step 4

1 e 2. Credenziali –> Crea credenziali –> ID Client OAuth La creazione procede spedita, e finalmente prendiamo l'API key

Ritorno al terminale, far parlare msgvault con la vostra mail

Per andare avanti tocca tornare

Step 5. 1. Si torna al terminale (cmd + spazio) e si edita la riga della shell (usiamo nano)

nano ~/.bashrc

  1. Aggiungere la riga in sospeso dall'installazione export PATH="$PATH:/Users/NomeUtente/.local/bin"

  2. ricaricare la shell. source ~/.bashrc

Pronti per usare msgvault

A questo punto possiamo iniziare a usare msgvault. Per iniziare il database 1. msgvault init-db

Per aggiungere il vostro account 2. msgvault add-account you@gmail.com.

Vi arriverà un messaggio di errore di questo tipo. Che è molto utile per capire dove creare il file di configurazione.

Error: OAuth client secrets not configured.
To use msgvault, you need a Google Cloud OAuth credential:
  1. Follow the setup guide: https://msgvault.io/guides/oauth-setup/
  2. Download the client_secret.json file
  3. Create or edit /Users/NOMEUTENTE/.msgvault/config.toml:
       [oauth]
       client_secrets = "/path/to/client_secret.json"

A questo punto dovete creare un file config.toml nella cartella che vi è stata indicata al punto 3 del messaggio di errore (/Users/NOMEUTENTE/.msgvault/config.toml) ed editarlo come suggerito, cioè con le due righe

       [oauth]
       client_secrets = "/path/to/client_secret.json"

Dovete puntare al file che avete scaricato con fatica finendo lo step dell'API Key su Google.

Usare msgvault

Rifate msgvault add-account you@gmail.com.

A questo punto si apre il browser, fate login con la mail e poi continua. Scegliete le operazioni da dare alle mail e... fatto. L'auth avrà successo e potremmo chiudere la finestra.

Il Wizard di configurazione vi dice cosa fare dopo

You can now run: msgvault sync-full you@gmail.com.

Eseguite il comando e vi troverete con un messaggio del tipo

Alla fine vi troverete con questo

Starting full sync for you@gmail.com
time=202X-XX-0XXX:42:10.077+01:00 

State per cominciare a sincronizzare tutta la vostra cartella di posta di gmail, allegati inclusi. Nel primo log vedrete il numero di messaggi da sincronizzare. I miei erano quasi 100K.

A questo punto passeranno un po' di ore e poi potete iniziare a cercare le cose in fretta. Ad esempio facendo le prove dei comandi che dice Wes nella sezione Explore.

Quindi:

msgvault tui # terminale
msgvault stats #statiche varie

A questo punto potete accorgervi che avete 870Mb di mail da linkedin. Quindi potrebbe venirvi voglia di cancellarle (d).

Quello che stata facendo è cancellare tutto solo da quello che google sa di voi, ma non dal vostro record personale dei dati – perché sono le vostre mail, ricordiamocelo – quindi, sì, fate pulizia ed evitate lock in.

Ma sa vi accorgete di avere un sacco di robaccia che NON volete nel vostro record personale? Anche perché, ecco, 10 GB di roba sono tantini...

Allora potete installare un plugin di VSCode o un altro editor di testo per leggere il db e brasare le cose che non servono. Questa però forse è una cosa da vedere a parte.

Anche perché fare pulizia è fare i conti con la spazzatura digitale.

#gmail #msgvault #spazzaturadigitale #email

Ci si vede nel Fediverso?

In attesa di capire come funzionano i commenti in Writefreely, e se val la pena aggiungerli, mi trovate qui nel fediverso.