commit 0d96c4dc99a2323c81293b7246e0fc73104beb28 Author: Björn Runden Date: Thu Jul 20 15:28:33 2023 +0200 init diff --git a/README.md b/README.md new file mode 100644 index 0000000..cf588cf --- /dev/null +++ b/README.md @@ -0,0 +1,4 @@ +MUTT Kram +====== + +Hier kommt mutt. Ohne alles. Nackent und doch patent. diff --git a/config.d/general b/config.d/general new file mode 100644 index 0000000..8441e14 --- /dev/null +++ b/config.d/general @@ -0,0 +1,34 @@ +# Maildirs verwenden statt mbox-Dateien +set mbox_type = Maildir +# Hauptverzeichnis der Mails +set folder = ~/.mail +# für lokale Adressen oder Abkürzungen +set alias_file = ~/.mutt/alias +# Zwischenspeicher für Kopfzeilen +set header_cache = ~/.mutt/cache/headers/ +# Zwischenspeicher für Nachrichteninhalte +set message_cachedir = ~/.mutt/cache/bodies/ +# temporäre Dateien +set tmpdir = ~/.mutt/temp +# keine Trennzeile zwischen Signatur und Text +# Sollte dafür in die Signatur rein! Vor die Signatur eine Zeile mit +# "-- " +set sig_dashes = no +# In diese Datei kommt die Signatur: +set signature = ~/.mutt/sig +# nach einigen Befehlen nicht auf Bestätigung warten +set wait_key = no +# Nur drei Sekunden auf Bestätigungen an anderen Stellen warten +set timeout = 3 +# Gelesene Mails nicht anbieten, ins Archiv zu verschieben +unset move +# Mails ohne zu fragen löschen +set delete +# nicht fragen beim Verschieben von Mails +unset confirmappend +# nicht Fragen beim Beenden von mutt +set quit +# mails nicht als "alt" markieren +unset mark_old +# beim Suchen auch mit Umlauten usw klar kommen (dekodiert Header etc) +set thorough_search diff --git a/mailboxes b/mailboxes new file mode 100644 index 0000000..19df834 --- /dev/null +++ b/mailboxes @@ -0,0 +1 @@ +mailboxes diff --git a/muttrc b/muttrc new file mode 100644 index 0000000..632f3e9 --- /dev/null +++ b/muttrc @@ -0,0 +1,8 @@ +source ~/.mutt/config.d/general +#source ~/.mutt/config.d/account +#source ~/.mutt/config.d/gmail +#source ~/.mutt/config.d/display +#source ~/.mutt/config.d/bindings +#source ~/.mutt/config.d/behaviour +#source ~/.mutt/config.d/pgp + diff --git a/offlineimaprc b/offlineimaprc new file mode 100644 index 0000000..460c67b --- /dev/null +++ b/offlineimaprc @@ -0,0 +1,67 @@ +[general] +accounts = privat, arbeit +maxsyncaccounts = 2 +pythonfile = ~/.mutt/scripts/muttkr.py + +[Account privat] +localrepository = privat-local +remoterepository = privat-remote +#status_backend = sqlite +autorefresh = 1 + +[Account arbeit] +localrepository = admin-local +remoterepository = admin-remote +#status_backend = sqlite +autorefresh = 1 + + +[Repository privat-local] +type = Maildir +localfolders = ~/.mail/br-runden.de + +[Repository admin-local] +type = Maildir +localfolders = ~/.mail/admin-runden.net + +# Jetzt die beiden IMAP Zugänge. Achtet darauf dass ihr SSL aktiviert +# :-) Damit offlineimap etwas schneller arbeitet, könnt ihr mehrere +# Connections erlauben (probiert einfach mal mit maxconnections +# herum). In meinem IMAP Workflow verwende ich Archiv-Ordner für jedes +# Jahr, die möchte ich natürlich nicht in jedem Lauf synchronsisieren, +# daher der folderfilter. + +[Repository privat-remote] +type = IMAP +ssl = yes +remoteuser = br@runden.de +remotehost = moo.everdc.de +#remotepass = password +remotepasseval = get_password('br@runden.de') +maxconnections = 5 +holdconnectionopen = yes +folderfilter = lambda foldername: not re.search('(^Archives.*)', foldername) +sslcacertfile = /etc/ssl/certs/ca-certificates.crt + +[Repository admin-remote] +type = IMAP +ssl = yes +remotehost = moo.everdc.de +remoteuser = admin@runden.de +remotepasseval = get_password('admin@runden.de') +maxconnections = 5 +holdconnectionopen = yes +sslcacertfile = /etc/ssl/certs/ca-certificates.crt + + +# Und nun das Feintuning. Offlineimap schreibt in ~/.mutt/mailboxes alle +# Mailboxen auf, damit Mutt seine gewünschte Ordner-Struktur +# vorfindet. Das ist das entscheidende Stückchen Gluecode. :-) + +[mbnames] +enabled = yes +filename = ~/.mutt/mailboxes +header = "mailboxes " +peritem = "+%(accountname)s/%(foldername)s" +sep = " " +footer = "\n" diff --git a/scripts/__pycache__/muttkr.cpython-311.pyc b/scripts/__pycache__/muttkr.cpython-311.pyc new file mode 100644 index 0000000..b8f7eae Binary files /dev/null and b/scripts/__pycache__/muttkr.cpython-311.pyc differ diff --git a/scripts/muttkr.py b/scripts/muttkr.py new file mode 100755 index 0000000..938cf55 --- /dev/null +++ b/scripts/muttkr.py @@ -0,0 +1,31 @@ +#!/usr/bin/env python +# -*- coding:utf-8 -*- +# +""" get/set passwords from gnome keyring """ + +import keyring +import getpass + +MUTTPWKONTEXT="mutt" + +def get_password(item): + return keyring.get_password(MUTTPWKONTEXT, item) + +def set_password(item, password): + keyring.set_password(MUTTPWKONTEXT, item, password) + +if __name__ == '__main__': + from sys import argv, exit + try: + action, item = argv[1], argv[2] + except IndexError: + exit('Syntax: [add|get] item') + if action == 'add': + password = getpass.getpass() + set_password(item, password) + elif action == 'get': + print ( get_password(item) ) + else: + exit('Syntax: [add|get] item') + +