web-dev-qa-db-fra.com

Comment gérer plusieurs comptes imap avec mutt

J'aime mutt, et la version fournie avec Ubuntu est géniale (elle a même une version corrigée), le seul avertissement que j'ai trouvé jusqu'à présent, c'est que je n'avais pas été en mesure de gérer plusieurs comptes imap en même temps.

Actuellement, ma configuration de mutt ressemble à ceci:

#$HOME/.mutt/muttrc
=== Accounts  ====

set my_decrypt=`gpg -o $HOME/.mutt/accounts/passwd.gpg.tmp -d $HOME/.mutt/accounts/passwd.gpg`

set my_first_mail_passwd=`awk '/[email protected]:/ {print $2}' $HOME/.mutt/accounts/passwd.gpg.tmp`

set my_second_mail_passwd=`awk '/[email protected]:/ {print $2}' $HOME/.mutt/accounts/passwd.gpg.tmp`

set my_rm=`rm -f $HOME/.mutt/accounts/passwd.gpg.tmp`

source $HOME/.mutt/accounts/[email protected]/[email protected]

//source $HOME/.mutt/accounts/[email protected]/[email protected]

Ce qui signifie qu'un fichier password.gpg est déchiffré à la volée (là où vivent mes mots de passe de messagerie), utilisez-le pour définir des vars et supprimé. Un profil par défaut est également généré. Il ressemble à ceci:

#$HOME/.mutt/accounts/[email protected]/[email protected]
set folder           = "imaps://imap.foo.com"

set spoolfile        = "imaps://imap.foo.com/INBOX"

set header_cache     = "$HOME/.mutt/cache/[email protected]"

set message_cachedir = "$HOME/.mutt/cache/[email protected]"

set imap_user        = "[email protected]"

set imap_pass        = $my_first_mail_passwd

set smtp_url         = "smtp://[email protected]"

set smtp_pass        = $my_first_mail_passwd

Grâce à cela, je ne peux utiliser que le compte configuré dans le profil par défaut. J'ai entendu dire que les dossiers de dossiers pouvaient être utilisés, mais je ne savais pas comment les utiliser, et je ne suis pas sûr que ce soit le cas. Ce que je recherche, je voudrais juste pouvoir créer différents profils en fonction du courriel que je voudrais lire .., Toute méthode de suggestion est la bienvenue .., je préférerais une configuration qui ne compte pas sur des programmes externes qui ne font pas partie d'une installation par défaut d'Ubuntu.

10
Javier López

Même s'il existe des guides utiles sur ce site et celui-ci , je pensais simplement vous montrer ma solution qui fonctionne actuellement. Vous remarquerez peut-être qu'il est similaire aux guides susmentionnés, mais avec des ajouts et des différences: J'ai constaté qu'il est possible de ne pas utiliser account-hooks ou folder-hooks dans certains cas. Voir le wiki de Mutt pour une autre façon de le configurer.

Je publierai les éléments de la configuration, puis mon entier .muttrc afin que vous puissiez voir comment tout cela s’agence.

Il est plus facile d'entrer les paramètres de vos deux comptes dans des fichiers séparés et de les enregistrer dans le dossier ~/.mutt. Par exemple, vos deux comptes pourraient s'appeler account.gmail1 et account.gmail2. Créez donc deux fichiers texte avec ces noms et suivez le modèle ci-dessous pour le contenu; ils devraient être tous les deux identiques, à l'exception de la partie user@; remplacez simplement toutes les occurrences de celui-ci par votre courrier électronique réel (par exemple, mik123@) dans les deux fichiers.

set imap_user = "[email protected]"
set imap_pass = ""
set from = "[email protected]"
set realname = "user"
set hostname = gmail.com
set folder = "imaps://[email protected]:993"
set spoolfile = "imaps://[email protected]/INBOX"
set postponed = "imaps://[email protected]/[Gmail]/Drafts"
set record = "imaps://[email protected]/[Gmail]/Sent Mail"
set smtp_url = "smtp://[email protected]:587"
set smtp_pass = ""
  • Notez que j'ai laissé le mot de passe vide (""), ce qui signifie que vous serez invité à le saisir. C'est ce que je préfère, mais vous pouvez intégrer votre propre solution si vous ne souhaitez pas avoir à entrer de nouveau le mot de passe.

  • Si vous souhaitez qu'un compte par défaut soit chargé au démarrage, vous pouvez utiliser dans votre .muttrc une ligne similaire à celle-ci, spécifiez simplement votre propre fichier de configuration.

    source "~/.mutt/account.gmail1"

  • Pour basculer réellement entre les comptes, placez un raccourci dans votre .muttrc en vous référant à l'emplacement et au nom réels de la configuration de votre compte:

    macro index <f4> '<sync-mailbox><enter-command>source ~/.mutt/account.gmail1<enter><change-folder>!<enter>'
    macro index <f5> '<sync-mailbox><enter-command>source ~/.mutt/account.gmail2<enter><change-folder>!<enter>'

  • Vous pourrez basculer entre les dossiers des deux comptes avec des commandes de pageur telles que

    macro index,pager ga "<change-folder>=[Gmail]/All Mail<enter>" "Go to all mail"

qui sont définis dans votre .muttrc; ceux-ci fonctionneront toujours pour chaque compte (voir mon .muttrc ci-joint).

  • J'ai testé ces paramètres particuliers avec les paramètres généraux supplémentaires dans mon .muttrc , de sorte que vous pouvez utiliser ce fichier et/ou l'assembler avec le vôtre, à vous de décider.

Maintenant, chargez simplement mutt dans le terminal et vous devriez pouvoir charger un compte, puis passer à l’autre à l’aide de votre raccourci. Mon .muttrc est collé ici si vous avez besoin d'un exemple fonctionnel de configuration.

Voir le bon article sur ce site sur Mutt et le Mutt wiki pour d'autres moyens de configurer mutt, par exemple en utilisant folder-hooks pour associer des paramètres à diverses boîtes aux lettres, ce qui est également - expliqué ici .

13
user76204

Vous pouvez utiliser plusieurs fichiers de configuration. Par exemple, vous pouvez exécuter:

  • mutt -F .muttrc-yahoo on /dev/pts/1
  • mutt -F .muttrc-gmail on /dev/pts/2
2
leopoldotosi

Il y a aussi un bon article/howto ici (GitHub). Peut-être un peu plus facile à suivre, ou pas.

Répertoires et fichiers

~ /
 | .Mutt /
 | ├── account.com.gmail.foo 
 | ├── account.com.gmail.bar 
 | ├── com.gmail.foo /
 | └── com.gmail.bar/
└── .muttrc
~/.muttrc  
# Accrochage de dossier 
 Accrochage de dossier 'account.com.gmail.foo' 'source ~/.mutt/account.com.gmail.foo' 
 Accrochage de dossier 'account.com.gmail. bar '' source ~/.mutt/account.com.gmail.bar '
 
 # Compte par défaut 
 source ~/.mutt/account.com.gmail.foo 
 
 # Macros permettant de changer de compte 
 Index de la macro 'source ~/.mutt/account.com.gmail.foo!' 
 Index de la macro 'source ~/.mutt/account.com.gmail.bar! '
 
 # Récupérer un raccourci courrier 
 lier l'index G imap-fetch-mail
~/.mutt/account.com.gmail.foo
set imap_user = "[email protected]" 
 set imap_pass = "" 
 set smtp_url = "smtp: //[email protected]: 587 /" 
 set smtp_pass = "" 
 défini à partir de = "[email protected]" 
 set realname = "Foo" 
 set folder = "imaps: //imap.gmail.com: 993 "
 set spoolfile =" + INBOX "
 set postponed =" + [Gmail]/Brouillons "
 set header_cache = ~/.mutt/com.gmail.foo/cache/en-têtes 
 set message_cachedir = ~/.mutt/com.gmail.foo/cache/body 
 set certificat_fichier = ~/.mutt/com.gmail.foo/certificates
~/.mutt/account.com.gmail.bar  
set imap_user = "[email protected]" 
 set imap_pass = "" 
 set smtp_url = "smtp: //[email protected]: 587 /" 
 set smtp_pass = "" 
 défini de = "[email protected]" 
 set realname = "Bar" 
 set folder = "imaps: //imap.gmail.com: 993 "
 set spoolfile =" + INBOX "
 set postponed =" + [Gmail]/Brouillons "
 set header_cache = ~/.mutt/com.gmail.bar/cache/en-têtes 
 set message_cachedir = ~/.mutt/com.gmail.bar/cache/body 
 set certificat_fichier = ~/.mutt/com.gmail.bar/certificates
0
SD Allen