[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

PATCH Adriane script for mutt setting



Hello,
The first time you choose email from menu it launch nano to edit mutt config.
which is not very user friendly, so I made a script that add support
for 5 popular free POP/IMAP email providers:
gmail.com, hotmail.com, inbox.com, zoho.com and lavabit.com.(All been tested)
the user need to select one from the list add his name, e-mail and password and the script will write a custom config and launch mutt.
the script can be launched from adriane Setup menu -> Mail Setting.

for testing:
apt-get source adriane

and apply the patch with:
patch -p0 < mutt-config.patch
sudo cp adriane-1.4/adriane-setup adriane-1.4/adriane-mutt /usr/bin/
launch it from adriane menu

cheers,

____________________________________________________________
FREE 3D EARTH SCREENSAVER - Watch the Earth right on your desktop!
Check it out at http://www.inbox.com/earth
diff -Naur adriane-1.4/adriane-mutt adriane-1.4-new/adriane-mutt
--- adriane-1.4/adriane-mutt	1970-01-01 00:00:00.000000000 +0000
+++ adriane-1.4-new/adriane-mutt	2013-02-05 14:13:06.000000000 +0000
@@ -0,0 +1,126 @@
+#!/bin/bash
+# adriane-mutt
+# Generate mutt configuration for popular email services for ADRIANE
+# by Ahmed Mansour 2013 under GPLv2 license
+
+export TEXTDOMAINDIR="/usr/share/locale"
+export TEXTDOMAIN="adriane-mutt"
+
+# Source common functions & global variables
+[ -r /usr/share/adriane/adriane-common.sh ] && . /usr/share/adriane/adriane-common.sh
+
+TITLE=$(gettext "SELECT EMAIL SERVICE")
+MSG_NAME=$(gettext "What is your real full name?")
+MSG_EMAIL=$(gettext "What is your email address?")
+MSG_PASS=$(gettext "What is your Password?")
+MSG_NEXT=$(gettext "NEXT")
+
+#Start wih blank .muttrc file
+rm -Rf .muttrc ./mutt
+echo "" > ~/.muttrc
+
+#Securing .muttrc file
+chmod 0700 ~/.muttrc
+
+if [ ! -d ~/.mutt ] ; then
+	mkdir ~/.mutt
+fi
+#Securing .mutt directory.
+chmod 0700 ~/.mutt
+
+if [ ! -d ~/.mutt/cache ] ; then
+	mkdir ~/.mutt/cache
+fi
+
+
+# Show email servers menu
+
+OPTIONS=( "0" "gmail.com" \
+          "1" "hotmail.com" \
+          "2" "inbox.com" \
+          "3" "zoho.com mail" \
+          "4" "lavabit.com mail" )
+
+submenu "${OPTIONS[@]}" 2>"$TMP" || bailout 0
+read SELECTION <"$TMP" ; rm -f "$TMP"
+
+
+# Ask user full name, login & password
+rm -f "$TMP" "$TMP.err"
+$DIALOG --clear --visit-items --no-shadow --no-cancel --title "$TITLE" --inputbox "$MSG_NAME" 9 75 "$FUNC" 2>"$TMP"
+realname="$(cat -s $TMP 2>/dev/null)"
+
+rm -f "$TMP" "$TMP.err"
+$DIALOG --clear --visit-items --no-shadow --no-cancel --title "$TITLE" --inputbox "$MSG_EMAIL" 9 75 "$FUNC" 2>"$TMP" 
+from="$(cat -s $TMP 2>/dev/null)"
+
+rm -f "$TMP" "$TMP.err"
+$DIALOG --clear --visit-items --no-shadow --no-cancel --title "$TITLE" --passwordbox "$MSG_PASS" 9 75 "$FUNC" 2>"$TMP"
+PASSWORD="$(cat -s $TMP 2>/dev/null)"
+
+
+if [ $SELECTION == "0" ] ; then
+#Gmail specific settings
+echo "set imap_user = '$from'" >> ~/.muttrc
+echo "set imap_pass = '$PASSWORD'" >> ~/.muttrc
+echo "set imap_keepalive = 900" >> ~/.muttrc
+echo "set folder = 'imaps://imap.gmail.com:993'" >> ~/.muttrc
+echo "set spoolfile = '+INBOX'" >> ~/.muttrc
+echo "set postponed = '+[Gmail]/Drafts'" >> ~/.muttrc
+echo "set smtp_url = 'smtp://$from@smtp.gmail.com:587/'" >> ~/.muttrc
+
+fi
+if [ $SELECTION == "1" ] ; then
+
+#Hotmail/outlook.com specific settings
+echo "set pop_user = '$from'" >> ~/.muttrc
+echo "set pop_pass = '$PASSWORD'" >> ~/.muttrc
+echo "set folder = 'pops://pop3.live.com:995'" >> ~/.muttrc
+echo "set spoolfile = '+INBOX'" >> ~/.muttrc
+echo "set smtp_url = 'smtp://$from@smtp.live.com:587/'" >> ~/.muttrc
+fi
+if [ $SELECTION == "2" ] ; then
+#inbox.com specific settings
+echo "set pop_user = '$from'" >> ~/.muttrc
+echo "set pop_pass = '$PASSWORD'" >> ~/.muttrc
+echo "set folder = 'pop://my.inbox.com:110'" >> ~/.muttrc
+echo "set spoolfile = '+INBOX'" >> ~/.muttrc
+echo "set smtp_url = 'smtp://$from@my.inbox.com:25/'" >> ~/.muttrc
+fi
+if [ $SELECTION == "3" ] ; then
+#zoho.com specific settings
+echo "set imap_user = '$from'" >> ~/.muttrc
+echo "set imap_pass = '$PASSWORD'" >> ~/.muttrc
+echo "set imap_keepalive = 900" >> ~/.muttrc
+echo "set folder = 'imaps://imap.zoho.com:993'" >> ~/.muttrc
+echo "set spoolfile = '+INBOX'" >> ~/.muttrc
+echo "set smtp_url = 'smtp://$from@smtp.zoho.com:465/'" >> ~/.muttrc
+fi
+if [ $SELECTION == "4" ] ; then
+#Lavabit.com specific settings
+echo "set imap_user = '$from'" >> ~/.muttrc
+echo "set imap_pass = '$PASSWORD'" >> ~/.muttrc
+echo "set imap_keepalive = 900" >> ~/.muttrc
+echo "set folder = 'imaps://lavabit.com:993'" >> ~/.muttrc
+echo "set spoolfile = '+INBOX'" >> ~/.muttrc
+echo "set smtp_url = 'smtp://$from@lavabit.com:25/'" >> ~/.muttrc
+fi
+ 
+echo "set realname = '$realname'" >> ~/.muttrc
+echo "set from = '$from'" >> ~/.muttrc
+echo "set header_cache = '~/.mutt/cache/headers'" >> ~/.muttrc
+echo "set message_cachedir = '~/.mutt/cache/bodies'" >> ~/.muttrc
+echo "set certificate_file = '~/.mutt/certificates'" >> ~/.muttrc
+echo "set smtp_pass = '$PASSWORD'" >> ~/.muttrc
+#TODO: add below more setting to make mutt more accessible:
+#http://dev.mutt.org/trac/wiki/MuttGuide
+echo "set move = no" >> ~/.muttrc
+echo "set markers = no" >> ~/.muttrc
+echo "set sort = 'threads'" >> ~/.muttrc
+echo "set sort_aux = 'last-date-received'" >> ~/.muttrc
+echo "set editor = nano -t" >> ~/.muttrc
+echo "set send_charset='utf-8'" >> ~/.muttrc
+
+#End of configuration, start mutt
+mutt
+exit 0;
diff -Naur adriane-1.4/adriane-setup adriane-1.4-new/adriane-setup
--- adriane-1.4/adriane-setup	2011-02-15 23:49:30.000000000 +0000
+++ adriane-1.4-new/adriane-setup	2013-02-05 14:46:55.000000000 +0000
@@ -370,7 +370,7 @@
    adriane_devices) adriane_devices ;;
    adriane-*) mkdir -p "$HOME"/.adriane; [ -f "$HOME"/.adriane/adriane.conf ] || ( echo "# $HOME/.adriane/adriane.conf -" "$(gettext "Personal settings file for ADRIANE")"; cat /etc/adriane/adriane.conf ) > "$HOME"/.adriane/adriane.conf; exec $EDITOR "$HOME"/.adriane/adriane.conf;;
    sbl-setup*) sudo $EDITOR /etc/sbl.conf; yesno "$(gettext "Restart ADRIANE screenreader?")" && sudo adriane-screenreader restart >/dev/null 2>&1 ;; 
-   mail-setup*) [ -f "$HOME"/.muttrc ] || ( echo "# $HOME/.muttrc -" "$(gettext "Personal Mail configuration file")"; zcat /usr/share/doc/mutt/examples/sample.muttrc.gz ) > "$HOME"/.muttrc ; exec $EDITOR "$HOME"/.muttrc;;
+   mail-setup*) adriane-mutt ;;
    printer-setup*) $COMMAND_WWW http://127.0.0.1:631/ ;;
    flash_home) flash_home ;;
    *) $COMMAND;;
diff -Naur adriane-1.4/Makefile adriane-1.4-new/Makefile
--- adriane-1.4/Makefile	2011-02-06 04:03:50.000000000 +0000
+++ adriane-1.4-new/Makefile	2013-02-04 23:50:28.000000000 +0000
@@ -1,4 +1,4 @@
-PROGRAMS  = adriane adriane-contacts adriane-sms adriane-ocr adriane-edit adriane-print adriane-mount adriane-shutdown adriane-calculator adriane-chat adriane-daisy-player adriane-battery
+PROGRAMS  = adriane adriane-contacts adriane-sms adriane-ocr adriane-edit adriane-print adriane-mount adriane-shutdown adriane-calculator adriane-chat adriane-daisy-player adriane-battery adriane-mutt
 SHARED    = adriane-common.sh
 CONFIGS   = configs/adriane/adriane.conf configs/dialog/dialogrc
 LANGUAGES = cs es de hi
@@ -12,7 +12,7 @@
 clean distclean:
 	true
 
-install-all: install-common install-adriane-screenreader install-adriane-sms install-adriane-contacts install-adriane-ocr install-adriane-edit install-adriane-print install-adriane-note install-adriane-setup install-adriane-config install-adriane-doc install-adriane-mount install-adriane-shutdown install-adriane-calculator install-adriane-chat installl-adriane-daisy-player install-adriane-battery
+install-all: install-common install-adriane-screenreader install-adriane-sms install-adriane-contacts install-adriane-ocr install-adriane-edit install-adriane-print install-adriane-note install-adriane-setup install-adriane-config install-adriane-doc install-adriane-mount install-adriane-shutdown install-adriane-calculator install-adriane-chat installl-adriane-daisy-player install-adriane-battery install-adriane-mutt
 
 install-common: $(SHARED) adriane
 	sh -n $(SHARED)
diff -Naur adriane-1.4/po/adriane-mutt.pot adriane-1.4-new/po/adriane-mutt.pot
--- adriane-1.4/po/adriane-mutt.pot	1970-01-01 00:00:00.000000000 +0000
+++ adriane-1.4-new/po/adriane-mutt.pot	2013-02-04 23:40:07.000000000 +0000
@@ -0,0 +1,34 @@
+# Translations for adriane-mutt
+# Copyright (C) 2013 Ahmed Mansour <atphalix@inbox.com>
+# This file is distributed under the same license as the adriane package. 
+# Ahmed Mansour <atphalix@inbox.com>, 2013.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2013-02-04 23:10+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ../adriane-mutt:12
+msgid "SELECT EMAIL SERVICE"
+msgstr ""
+
+#: ../adriane-mutt:13
+msgid "What is your real full name?"
+msgstr ""
+
+#: ../adriane-mutt:14
+msgid "What is your email address?"
+msgstr ""
+
+#: ../adriane-mutt:15
+msgid "What is your Password?"
+msgstr ""
diff -Naur adriane-1.4/po/de/adriane-mutt.po adriane-1.4-new/po/de/adriane-mutt.po
--- adriane-1.4/po/de/adriane-mutt.po	1970-01-01 00:00:00.000000000 +0000
+++ adriane-1.4-new/po/de/adriane-mutt.po	2013-02-05 00:19:48.000000000 +0000
@@ -0,0 +1,33 @@
+# Translations for adriane-mutt
+# Copyright (C) 2013 Ahmed Mansour <atphalix@inbox.com>
+# This file is distributed under the same license as the adriane package.
+# Ahmed Mansour <atphalix@inbox.com>, 2013.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: adriane-mutt 1.0\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2013-02-04 23:10+0000\n"
+"PO-Revision-Date: 2013-02-05 00:10-0000\n"
+"Last-Translator: Ahmed Mansour <atphalix@inbox.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.5.4\n"
+
+#: ../adriane-mutt:12
+msgid "SELECT EMAIL SERVICE"
+msgstr "Wählen Sie E-Mail-Service"
+
+#: ../adriane-mutt:13
+msgid "What is your real full name?"
+msgstr "Was ist Ihr richtiger voller Name?"
+
+#: ../adriane-mutt:14
+msgid "What is your email address?"
+msgstr "Was ist Ihre E-Mail-Adresse?"
+
+#: ../adriane-mutt:15
+msgid "What is your Password?"
+msgstr "Was ist Ihr Passwort vergessen?"
diff -Naur adriane-1.4/po/fr/adriane-mutt.po adriane-1.4-new/po/fr/adriane-mutt.po
--- adriane-1.4/po/fr/adriane-mutt.po	1970-01-01 00:00:00.000000000 +0000
+++ adriane-1.4-new/po/fr/adriane-mutt.po	2013-02-05 00:23:37.000000000 +0000
@@ -0,0 +1,33 @@
+# Translations for adriane-mutt
+# Copyright (C) 2013 Ahmed Mansour <atphalix@inbox.com>
+# This file is distributed under the same license as the adriane package.
+# Ahmed Mansour <atphalix@inbox.com>, 2013.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: adriane-mutt 1.0\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2013-02-04 23:10+0000\n"
+"PO-Revision-Date: 2013-02-05 00:22-0000\n"
+"Last-Translator: Ahmed Mansour <atphalix@inbox.com>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: Poedit 1.5.4\n"
+
+#: ../adriane-mutt:12
+msgid "SELECT EMAIL SERVICE"
+msgstr "Selectioner un service email"
+
+#: ../adriane-mutt:13
+msgid "What is your real full name?"
+msgstr "Quel est votre vrai nom?"
+
+#: ../adriane-mutt:14
+msgid "What is your email address?"
+msgstr "Quelle est votre adresse e-mail?"
+
+#: ../adriane-mutt:15
+msgid "What is your Password?"
+msgstr "Quel est votre mot de passe?"

Reply to: