Coffee-brewing
Gnus besteht aus mehreren Dateien in Lisp (LISt Processing language) und nicht aus einem einzelnen Binarie. Der Quellcode und auch die Konfigurationsdateien enden auf *.el. Die fertig kompilierten Gnus-Dateien auf *.elc.
Ab der Version 5.8.x, also der aktuellen Version, beherrscht Gnus MIME (Multipurpose Internet Mail Extensions) ohne Zusatzpakete. Zusätzlich gibt es neue oder auch etwas abgeänderte Variablen, im Gegensatz zum älteren Gnus 5.6.
Der Gnus ist in der aktuellen Version 5.8.x abhängig von einem (X)Emacs in der Version 20.x oder höher.
In der Datei ~/.gnus im Home-Verzeichnis wird die Konfiguration vorgenommen. In dieser lassen sich die voreingestellten Einstellungen ändern, wenn diese nicht gefallen und zusätzliche vornehmen.
Zusätzlich legt Gnus eine ~/.newsrc für die abonnierten News-Gruppen an und noch eine ~/.newsrc.eld für Verwaltungsangaben an.
Zu Beginn sollte man sich nicht von dem Umfang und den Möglichkeiten verwirren lassen. Viele sind später auch über das Menü erreichbar und Overdosis am Anfang.
Mit einer kleinen ~/.gnus sollte man zuerst anfangen, die nur die Adressen der Server (News und Mail) beschreibt und noch individuelle Angaben, wie Name und eMail-Adresse angeben. Dann sollte beim Ausprobieren das Debugging im XEmacs aktiviert werden:
Options – Troubleshooting – Debug On Error.
In den Konfigurationsdateien von Gnus (.gnus) und auch dem Papa XEmacs (init.el) werden oft die Begriffe nil und t verwendet. Diese
sind in der Lisp-Sprache folgende Symbole:
nil == falsch und t == wahr.
Das ; gilt als Kommentarzeichen, die ganze Zeile wird danach ignoriert. Klammern, die geöffnet wurden, müssen in der gleichen Anzahl wieder geschlossen werden und ein kleiner Kommentar zu einer Einstellung kann nie schaden.
;;* adaptive scoring aktivieren (setq gnus-use-adaptive-scoring t)
Ja, er soll die Funktion „adaptive-scoring“ aktivieren.
;;* adaptive scoring deaktivieren (setq gnus-use-adaptive-scoring nil)
Nein, er soll die Funktion „adaptive-scoring“ deaktivieren.
Einstellungen können jeweils hintereinander,…
(setq user-full-name "Julius Caesar" user-mail-address "jc@film1.rom.it")
…untereinander
(setq user-full-name "Julius Caesar" user-mail-address "jc@film1.rom.it")
…oder auch einzeln
(setq user-full-name "Julius Caesar") (setq user-mail-address "jc@film1.rom.it")
…aufgeführt werden.
Beispiel für eine ~/.gnus
;;* Zuerst geben wir einen Newsserver mit der gnus-select-method an. ;;* Hier news.lokigames.com. (setq gnus-select-method '(nntp "news.lokigames.com")) ;;* Oder von einem eigenen lokalen Newsserver, wie z.B den leafnode oder INN (setq gnus-select-method '(nntp "localhost")) ;;* Wer direkt aus dem Newsspool lesen möchte ändert nntp in nnspool (setq gnus-select-method '(nnspool ""))
Alle anderen Gruppen, die wir nicht mit dieser gnus-select-method angeben, sind für Gnus foreign groups. Ein anderer NNTP-Server, eine
virtuelle Gruppe oder auch eine Mail-Gruppe.
nnml ist ein Mail-Backend und bietet gute Möglichkeiten zum Verwalten und Einsortieren in diverse Gruppen. Jede Mail wandert in eine
Datei in einem Unterverzeichnis, wie weiter unten bei den Split-Methoden angegeben. Mit Mailinglisten kann so Gnus 1a umgehen.
Die Mails abzuholen, würde ich mit fetchmail empfehlen. So können etliche Server abgeklappert werden und lokal den Usern zugeordnet
werden, vielleicht noch mit procmail kombiniert.
Um auch eMails lesen und verwalten zu können, geben wir eine zweite Methode mit secondary-select-methods an. Gnus bietet dazu insg. 5 Backends
zur Verwaltung an:
nnbabyl, nnfolder, nnmh, nnmbox und nnml.
Jedes backend hat spezielle Funktionen oder Fähigkeiten, die am besten im Gnus-Manual nachzulesen sind…
;;* Die Angabe des Mail-Backends nnml für eMails per gnus-secondary-select-methods (setq gnus-secondary-select-methods '((nnml "private" ;;* Das Verzeichnis, wo Gnus die Mails ablegen soll. Ansonsten legt er ~/Mail/ ;;* an. (nnml-directory "~/sexforyou/"))) ;;* Hier werden jetzt die News-Artikel extra abgespeichert gnus-article-save-directory "~/News/save/" ;;* Das Gnus Verzeichnis, von wo aus alle Datei-Variablen abgeleitet werden ;;* und auch die Score-Einträge abgelegt werden. gnus-directory "~/News/") ;;* Nur wenn der Newsserver eine Authentifizierung verlangt. Z.B.: Wenn man sich per ;;* Call-by-Call ohne News-Server-Angebot einwählt oder über einen zweiten ISP ;;* bei einem anderen Provider News abholt. news.cis.dfn.de zum Bleistift. (add-hook 'nntp-server-opened-hook 'nntp-send-authinfo) ;;* Wer Gnus nur zur eMail-Verwaltung nutzen möchte, setzt *nur* diese ;;* select-method... (setq gnus-select-method '(nnml "")) ;;* ...und deaktiviert dafür noch gnus-secondary-select-methods. (setq gnus-secondary-select-methods nil) ;;* Wer mit qmail arbeitet, sollte die Mails in einem extra Verzeichnis ;;* einliefern und dann dieses von Gnus lesen und immer checken lassen. (setq nnmail-spool-file "/home/marcush/mailspool-qmail") ;;* Den eigenen Namen (Real-Name im Usenet bitte!) geben wir hiermit an. (setq user-full-name "Julius Caesar") ;;* Und unsere eigene eMail-Adresse. (setq user-mail-address "jc@film1.rom.it") ;;* Eingehende Mails können in verschiedene Gruppen sortiert werden, die Gnus ;;* dann automatisch anlegt, sofern zutreffende Mails eingehen. Spam und ungeliebte ;;* Gäste werden extra versorgt und betäubt. (setq nnmail-split-methods '( ("spam" "^From:.*hotmail.com") ("gmx-Laura" "^From:.*laura@gmx.*") ("gnus-announce" "^\\(To:\\|Cc:\\|CC:\\|Resent\\|Sender:\\).*ding-announce@gnus.org") ("inbox" "^\\(To:).*marcush@uunet.de") ("inbox" "^\\(To:).*mrmh@gmx.net") ("gnome" "^\\(To:\\|Cc:\\|CC:\\|X-Loop:\\).*gnome.org") ("xemacs" "^\\(To:\\|Cc:\\|CC:\\|Sender:\\).*xemacs.org") ("nachtschwester" "From:.*vera.ht@gmx.*") ("troublemaker" "^\\(To:\\|Cc:\\).*root@icecold.paradies.*") ("news.daily" "^\\(To:\\|Cc:\\).*news@drago.*") ("Spam" "") ) ) ;;* Alle verfassten News-Artikel automatisch als Archiv speichern und ausgehende ;;* Mails automatisch einmal im Monat in eine Datei mit Datum (Jahr-Monat) packen. (setq gnus-message-archive-group '((if (message-news-p) "archive-news" (concat "mail." (format-time-string "%Y-%m" (current-time))))) ) ;;* Diese Verzeichnisse oder Gruppen möchten wir immer angezeigt bekommen, ;;* auch leer oder wenn der Inhalt gelesen wurde. Gnus zeigt diese sonst nicht ;;* _automatisch_ in der Gruppen-Übersicht an, wenn keine neuen Artikel oder ;;* Mails in diesen Gruppen eingegangen sind. (setq gnus-permanently-visible-groups "^nnml\\|^de.comp.os.unix.*") ;;* URLs im Netscape-Browser öffnen und nicht mit dem Browser w3. ;;* URLs in einer Nachricht können mit <Tab> angewählt werden. (setq browse-url-browser-function 'browse-url-netscape) (setq gnus-button-url 'gnus-netscape-open-url)
Message-ID vorgeben. Dafür muß die /etc/hosts einen FQDN (z.B.: maschine.domain.de) für den Rechner beinhalten. Also einen vollständig qualifizierten Domänenname.
# /etc/hosts 127.0.0.1 localhost localhost 127.0.0.2 icepact.paradies.ddns.org icepact
;;* Um die Message-ID zu setzen... (setq mail-host-address "icepact.paradies.ddns.org") ;;* Und schließlich möchten wir ausgehende Mails und Artikel beim ;;* Versenden durch den Spell-Checker ispell prüfen lassen, ;;* sofern installiert! (add-hook 'message-send-hook 'ispell-message)