di AAAle
Mutt è un programma per la gestione della posta elettronica completamente testuale e personalizzabile come un qualsiasi client a interfaccia grafica (KMail, Evolution, Sylpheed ecc).
A differenza degli altri, non possiede una gestione smtp / pop3 integrata nel software stesso quindi bisogna appoggiarsi a dei programmi esterni, nel nostro caso fetchmail + procmail (per la gestione POP3) e msmtp (per la gestione SMTP).
Supponendo che i programmi citati siano già installati (vedete voi se usare il vostro gestore di pacchetti preferito o compilare dai sorgenti) iniziamo la nostra avventura all’uso di Mutt.
Fetchmail:
Fetchmail permette di reperire le nostre e-mail da un mailserver remoto e salvarle nel nostro pc locale. La configurazione è molto semplice, per prima cosa creiamo il file di configurazione .fetchmailrc nella nostra home e diamogli i permessi 710.
aaale@Nebula ~ $ touch .fetchmailrc aaale@Nebula ~ $ chmod 710 .fetchmailrc
Ora editiamo il file:
aaale@Nebula ~ $ vim .fetchmailrc
Inseriamo il seguente codice:
poll indirizzo_server_pop3 uidl protocol pop3 user "nome_utente" password "tua_password" options keep
Ovviamente se abbiamo più indirizzi di posta basta aggiungere una riga opportunamente modificata sotto a quella già esistente.
Analizziamo a fondo ogni passo:
poll: Inizializza una chiamata ad un serverindirizzo_server_pop3: Indirizzo del server pop3 (ad esempio box.tin.it)
uidl: Controlla se le e-mail presenti sul server sono già state scaricate, in caso negativo le scarica altrimenti non compie nessuna operazione
protocol pop3: Specifica il tipo di protocollo da usare per contattare il mailserver
user “nome_utente”: Il nome utente per l’autentificazione
“tua_password”: La password per l’autentificazione
options keep: Mantiene le mail sul server
ATTENZIONE: se avete un account Virgilio o Tin (probabilmente Libero o anche Tiscali non ho mai provato), necessitano dell’autenticazione cram-md5 quindi aggiungiamo i seguenti parametri alla riga di configurazione di .fetchmailrc
poll indirizzo_server_pop3 uidl protocol pop3 auth cram-md5 auth password user "nome_utente" password "tua_password" options keep
Procmail:
Procmail permette lo smistamento delle e-mail in locale e con qualche piccolo trucco può funzionare anche da filtro. Senza questo software le e-mail rimarebbero in /var/spool/mail/nomeutente.
Anche in questo caso la configurazione è intuitiva e semplice e si inizia col creare il file .procmailrc nella home del nostro utente
aaale@Nebula ~ $ touch .procmailrc
Creiamo la directory Mail nella nostra home che conterrà i nostri database di posta
aaale@Nebula ~ $ mkdir Mail
Ora editiamo il file:
aaale@Nebula ~ $ vim .procmailrc
Inseriamo il seguente codice:
MAILDIR=$HOME/Mail LOGFILE=$HOME/.procmaillog :0 * ^From:.*pippo@dominio1.com ! pluto@domain.it :0 * ^From:.*pippo@dominio2.it Pippo :0 * ^From:.*ciccio@dominio3. Ciccio :0 ^Subject:.*Spam Spam :0 ^Subject:.*Virus /dev/null :0 * .* Inbox
Analizziamo a fondo ogni passo:
mbsmtp
msmtp è un client SMTP che permette l’inoltro di una mail verso un server SMTP. Anche in questo caso la configurazione è intuitiva e semplice e si inizia col creare il file .msmtprc nella home del nostro utente
aaale@Nebula ~ $ touch .msmtprc
Ora editiamo il file e inseriamo il seguente codice:
host 192.168.1.1 from mio_utente@miodominio.org # Opzionale user ciccio password pasticcio
Analizziamo a fondo ogni passo:
In caso serva l’autentificazione per l’accesso al server SMTP inserire i seguenti dati:
E finalmente configuriamo il nostro client di posta. Si crea sempre il solito file nella nostra home questa volta chiamato .muttrc
aaale@Nebula ~ $ touch .muttrc
Ora editiamo il file e inseriamo il seguente codice:
set pager_context=1 set pager_index_lines=6 #mostra un mini-indice nel pager set menu_scroll set pgp_verify_sig=no #non mostrare il pgp nel pager set status_on_top #metti la linea di stato in alto set sort=threads #visualizza i messaggi per argomento nell'indice set status_format=" %r %b %f %n Del %d Msgs %m %l %> (%P)" set pager_format="%-10.10i %[!%a %b %d %R]" set date_format="!%H:%M %a %d %b " set index_format="%4C %Z %[%b%d] %-15.15F %s" set folder_format="%2C %t %8s %d %N %f" set sendmail="/usr/local/bin/msmtp" # Il percorso dell'eseguibile per spedire le mail al server SMTP set from="tuamail@tuodominio.com" #imponi il tuo campo from set realname="Ciccio Pasticcio" #Inserisci il nome vero set record="Mail/Sent" #le email inviate sono salvate qui set delete=yes #cancella senza chiederlo set include=yes #quota i messaggi alla risposta set fast_reply=yes #non chiedere se devi rispondere set beep=no #niente rumore set markers=no #non aggiungere un "+" quoando vai a capo set confirmappend=no #no prompt for save to =keep set to_chars=" +TCF" #niente "L" per mail_list set folder = "Mail" # la directory contenente le mailboxes # Le nostre mailboxes mailboxes = Spam mailboxes = Pippo mailboxes = Ciccio mailboxes = Inbox mailboxes = Sent #fai vedere gli header con il tasto h bind pager h display-toggle-weed #Visualizzo i possibili URL presenti in una mail premendo ctrl + b macro pager cb 'urlview' 'Follow links with urlview #esegui fetchmail premendo il tasto G macro index G "!fetchmail -m 'procmail -d %T'r" #Questa è la lista degli header da togliere quando la mail viene visualizzata ignore * unignore Date To From: Subject X-Mailer Organization User-Agent hdr_order Date From To Subject X-Mailer User-Agent Organization #Mutt deve avere qualche colore #questi sono per quattro livelli di testo quotato #vengono sovrascritte le impostazioni di sistema contenute in /etc/mutt/Muttrc #color quoted green default color quoted1 magenta blue #color quoted2 yellow default #color quoted3 red default #color signature cyan cyan #Queste impostazioni di colori sono copiate da /etc/mutt/Muttrc.color #commentatele se volete i colori di default contenuti in /etc/mutt/Muttrc #Je vois la vie en rose :-) color hdrdefault brightcyan blue color header brightwhite blue "^from:" color header brightwhite blue "^subject:" color quoted brightgreen blue color signature brightwhite blue color indicator blue green color error red black mono error bold color status black cyan mono status bold color tree yellow blue color tilde brightmagenta blue color body brightwhite blue "[-a-z_0-9.]+@[-a-z_0-9.]+" mono body bold "[-a-z_0-9.]+@[-a-z_0-9.]+" color body brightyellow black "^Good signature" mono body bold "^Good signature" color body brightwhite red "^Bad signature from.*" mono body bold "^Bad signature from.*" color normal white blue color message green black color attachment brightgreen blue
Finalmente… dopo molto lavoro tutto è configurato al meglio e adesso prepariamoci al divertimento. Scarichiamo la posta
aaale@Nebula ~ $ /usr/bin/fetchmail -m "/usr/bin/procmail -d %T"
Apriamo Mutt leggendo le mail presenti nella Inbox
aaale@Nebula ~ $ mutt -f Mail/Inbox
Velocemente accenno che premendo:
- m si scrive una nuova mailr rispondi ad una maild si cancella una mailinvio si legge la mailh si visualizza l’header della maily si spedisce la mailc si cambia la mailbox e successivamente ? per vedere la lista
$ aggiornare la mailbox
SUGGERIMENTO:
Per scaricare la posta in automatico ogni certo tot di tempo (ad esempio 5 minuti) consiglio l’installazione di un demone cron. Un buon tutorial può essere trovato al seguente indirizzo: http://www.gentoo.org/doc/it/cron-guide.xml
Ora analizziamo come aprire gli allegati di posta e come visualizzare gli URL che potrebbero essere presenti in una mail. Per far ciò, abbiamo bisogno di creare un file .mailcap nella nostra home e di installara una utility per mutt chiamata urlview.
aaale@Nebula ~ $ touch .mailcap
Editiamo il file e inseriamo il seguente codice:
application/vnd.sun.xml.writer;/home/aaale/OpenOffice.org1.1.4/soffice %sapplication/vnd.sun.xml.writer.global;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/vnd.stardivision.writer;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/vnd.stardivision.writer-global;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/x-starwriter;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/vnd.sun.xml.writer.template;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/msword;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/vnd.sun.xml.calc;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/vnd.stardivision.calc;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/x-starcalc;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/vnd.sun.xml.calc.template;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/excel;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/msexcel;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/vnd.ms-excel;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/x-msexcel;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/vnd.sun.xml.impress;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/vnd.stardivision.impress;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/vnd.stardivision.impress-packed;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/x-starimpress;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/vnd.sun.xml.impress.template;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/powerpoint;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/mspowerpoint;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/vnd.ms-powerpoint;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/x-mspowerpoint;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/vnd.sun.xml.draw;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/vnd.stardivision.draw;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/x-stardraw;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/vnd.sun.xml.draw.template;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/vnd.sun.xml.math;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/vnd.stardivision.math;/home/aaale/OpenOffice.org1.1.4/soffice %s
application/x-starmath;/home/aaale/OpenOffice.org1.1.4/soffice %s
image/*; display %s
In poche parole apro qualsiasi tipo di documento con OpenOffice mentre nell’ultima riga apro qualsiasi immagine con il comando display incluso nella suite Imagemagick.
Ora creiamo il file .urlview e inseriamo il seguente codice:
COMMAND firefox %s
Ovvero apro le url con firefox. Ora provate ad aprire una mail con delle URL presenti nel testo e premete ctrl + b, apparirà la lista delle URL disponibili. Selezionate con le frecce direzionali una URL e premete invio.
Buon Divertimento!
Documentazione usata per la realizzazione di questo How-To:
RTFM [Read The Fuckin’ Manual] :Dhttp://www.gentoo.org/doc/it/guide-to-mutt.xml
nel .muttrc e’ possibile customizzare l’editor usato per scrivere le mail. la mia soluzione
set editor = “~/.creasign && vim -c ‘set nobackup’ -c ‘/^$/+1′”
con ~/.creasign =
#!/bin/sh
fortune 100% italia > ~/.signature
questo per avere una signature diversa ogni mail (a patto che sempre nel .muttrc ci sia l’istruzione set signature = $HOME/.signature
-c ‘/^$/+1 = sposta il cursore subito dopo tutti gli header iniziali (campo to: from: subject ecc)
maus
Un grazie mille ad AAAle per la guida 8)
di seguito riporto alcune personalizzazioni:
1) la mia scelta � stata quella di usare lo stesso tipo di mbox usato da kmail. questo mi ha permesso una migrazione indolore, quindi:
*set mbox_type=Maildir
%la Maildir � vantaggiosa per il fatto che le mails vengono salvate in singoli files velocizzando la navigazione.
%% il formato
~/Mail/
nomed/
cur/ new/ tmp/
mutt/
cur/ new/ tmp/
debian/
cur/ new/ tmp/
%%% cur, new, tmp contengono file del frmato $numero-host… (1 mail = 1 file)
2) perch� questo fosse possibile ho dovuto aggiungere “/” alla fine di ogni cartella definita in .prochmailrc:
:0
^To:.*nomed@yahoo.it
folder/
2.a) ho poi detto a procmail di crearmi anche un backup
:0c:
gzip -9fc >> .backup.gz
quello che mi mancava in mutt affinch� fosse perfetto 8) era un pannello che mi dicesse il numero di mails contenute in ogni mailboxes e il numero delle mails non lette … bh� chiaramente qualcuno ha gi� provveduto
i)http://thomer.com/mutt/
ii)http://mutt-ng.berlios.de/snapshots/
iii)http://www.oreillynet.com/pub/wlg/6565
per chi usa debian:
#MUTT
deb http://people.debian.org/~nobse/debian/ unstable/
deb-src http://people.debian.org/~nobse/debian/ unstable/
quindi una volta passato a muttng ho chiamato il file che era .muttrc —-> .muttngrc, che conteneva anche un richiamo al file tasti.rc:
——————-
#file ~/.muttngrc
….
source ~/.mutt/tasti.rc
….
——————–
—————————–
#file ~/mutt/tasti.rc
set sidebar_visible=”no”
set sidebar_width=25
set shorten_hierarchy
color sidebar_new yellow default
bind index sidebar-open
bind index previous-entry
bind index next-entry
bind pager previous-line
bind pager next-line
bind pager previous-entry
bind pager next-entry
bind index F flag-message
bind pager F flag-message
macro index “set invsidebar_visible ”
bind index CP sidebar-prev
bind index CN sidebar-next
bind index CO sidebar-open
bind pager CP sidebar-prev
bind pager CN sidebar-next
bind pager CO sidebar-open
—————————-
e questo � tutto … AAAle aspetto la prossima :) …
nomed
(komplikazione@yahoo.it)–>