Hvordan å konfigurere Gnus 5.10.x med IMAP ved UiO

Innhold

  1. Innledning
  2. Eksempel på eksisterende oppsett for mailspool
  3. Oppsett for lagring av epost i IMAP-strukturen
  4. Oppsett for lagring av epost på hjemmeområdet
  5. Permanent lagring av passord på disk

1) Innledning

Dette dokumentet er utformet slik at innholdet av kapitlene kan kopieres inn i .gnus.el uten at det blir syntaksfeil. Med mindre jeg har noen trykkfeil, da.

Dokumentet finnes også på http://folk.uio.no/jani/other/gnus+imap.html og http://folk.uio.no/jani/other/gnus+imap.txt.

For å bruke Gnus 5.10.x (og sannsynligvis nyere versjoner og 5.9) med IMAP-oppsettet til UiO har jeg to alternative oppsett.

Det ene oppsettet (kapittel 3) benytter IMAP som lagringssystem for epost, det andre (kapittel 4) oppfører seg mer som før, og lagrer til brukerens hjemmeområde.

Felles er at de benytter SSL-tilkobling mot IMAP-serveren. Dersom det ikke er noe kult med SSL, så kan linjene som refererer til ssl fjernes, men portnummer må da endres til 143. SSL-tilkoblingen benytter følgende kommando i _min_ ("jeg har ikke endret noe") Emacs:

openssl s_client -quiet -ssl3 -connect %s:%p

hvor %s er DNS-navnet til IMAP-serveren og %p er portnummeret.

Nysgjerrige kan eventuelt se på ~jani/.gnus.el for styggere og mer avanserte eksempler på oppsett, sortering av post osv.

2) Eksempel på eksisterende oppsett for mailspool

; Dersom epost tidligere var håndtert via nnml (nnmail), så det
; sannsynligvis slik ut:

(setq gnus-secondary-select-methods
      '((nnml "")))

; Sortering var vanlig å gjøre slik:

(setq nnmail-split-methods 'nnmail-split-fancy)
(setq nnmail-split-fancy
      '(|
	(: nnmail-split-fancy-with-parent)
	(from "en@adresse.example" "ettnavn")))

; ...

3) Oppsett for lagring av epost i IMAP-strukturen

; Referanse: http://www.gnus.org/manual/gnus_195.html#SEC195

; For å bare aksessere epost via IMAP benyttes nnimap-modulen:

; Eksempelet viser hvordan man spesifiserer gruppe-alias for Gnus
; ("uio"), IMAP-server ("imap.uio.no"), tilkoblingsmåte (ssl),
; portnummer (993), brukernavn ("jani") og autentiseringsmekanisme
; (login).  Det går fint an å sløyfe portnummer, fordi 993 er
; standardport for IMAP-SSL.  Hvis Emacs kjører på en riktig
; konfigurert UiO-maskin eller annen maskin hvor brukernavnet ditt er
; identisk med ditt UiO-brukernavn, så skal det være mulig å droppe å
; oppgi dette også.

(setq gnus-secondary-select-methods
      '((nnimap "uio"
                (nnimap-address "imap.uio.no")
                (nnimap-stream ssl)
		(imap-username "jani")
                (nnimap-authenticator login))))

; Når du så ber om news med 'g', så vil du bli spurt om passord for
; IMAP-serveren, samt mulighet for å mellomlagre passord så lenge Gnus
; kjører.

; I No Gnus 0.2 og nyere kan man sette imap-store-password for å
; slippe dette spørsmålet i fremtiden:

(setq imap-store-password t)

; OBS!  Dette medfører at passordet blir lagret i klartekst i
; mail-source-password-cache!

; nnmail-split-methods er irrelevant for sortering av IMAP-meldinger,
; bruk nnimap-split-rule.  Legg merke til at nnmail-split-fancy
; fortsatt kan brukes, slik at samme regler brukes for IMAP og
; mailspool f.eks. i overgangsperioden, eller dersom du leser din
; IMAP-post fra et sted hvor du også får lokal epost.

(setq nnimap-split-rule 'nnmail-split-fancy)

; Bruk eventuelt nnimap-split-fancy med egne splitteregler dersom IMAP
; og mailspool skal håndteres forskjellig:

(setq nnimap-split-rule 'nnimap-split-fancy
      nnimap-split-fancy
      '(|
	(from "en@adresse.example" "INBOX.ettnavn")))

; ...

; Se også: http://www.gnus.org/manual/gnus_196.html#SEC196

4) Oppsett for lagring av epost på hjemmeområdet

; Referanser: http://www.gnus.org/manual/gnus_163.html#SEC163
;             http://www.gnus.org/manual/gnus_166.html#SEC166

; Dette eksempelet gjør at epost hentes via IMAP (slettes fra
; IMAP-innboksen) og leveres til nnml-foldere i ditt hjemmeområde.

; Konfigurasjonen tilsvarer det for lagring av epost i
; IMAP-strukturen, men deler av syntaks og symbolnavn er annerledes.

; Erstatt "jani" med ditt brukernavn, eller unnlat å oppgi :user
; "jani".  Du vil bli spurt om passord, og om du ønsker å mellomlagre
; det så lenge Gnus kjører.

(setq mail-sources
      '((imap :server "imap.uio.no"
	      :port 993
	      :stream ssl
	      :authentication login
	      :user "jani")))

(setq gnus-secondary-select-methods
      '((nnml "")))

; Det er faktisk alt som skal til.  nnmail-split-methods gjelder som i
; kapittel 2 fortsatt, fordi det er den modulen som benyttes for
; håndtering av meldingene.

5) Permanent lagring av passord på disk

; Lagring av passord til disk anbefales ikke på generell basis, men
; dersom noen absolutt vil, så er det mulig å lagre dette f.eks. i
; ~/.authinfo og benytte det for autentisering.  Pass i så tilfelle på
; at ~/.authinfo ikke er lesbar eller skrivbar for noen andre (chmod
; og-rwx ~/.authinfo)!

(setq imap-authinfo-file (expand-file-name "~/.authinfo"))

; Innholdet i .authinfo er tilsvarende for .netrc (minus innledende
; semikolon og mellomrom):

; machine imap.uio.no login jani password hahaneisådumerjegikke

; Hvis "password hahaneisådumerjegikke" ikke er med, så vil man bli
; bedt om passord ved innlogging.

; Av og til leses ikke .authinfo-filen, og da kan det være nødvendig å
; tvinge det gjennom:

(setq gnus-secondary-select-methods
      '((nnimap "uio"
                (nnimap-address "imap.uio.no")
                (nnimap-stream ssl)
                (nnimap-server-port 993)
                (nnimap-authinfo-file "~/.authinfo")
                (nnimap-authenticator login))))

; For lokal lagring av epost er det ikke noe spesielt man kan gjøre.
; .authinfo-filen "skal" leses uansett.

Jan Ingvoldstad - jani+gnus-imap-2004 ved ifi.uio.no
2004-11-24: v1.0
2004-11-29: v1.1
2004-11-30: v1.2
2004-12-01: v1.3