today, i set up emacs gnus as mail client for my work email at microsoft outlook. an administrator of our microsoft-tenant had to approve my client-id and -secret beforehand.

- emacs mail reader: gnus (with some custom elisp)
- sasl plugin kdexoauth2 for cyrus sasl method
- pizauth as oauth2 daemon
- msmtp for smtp
- isync / mbsync for imap

my custom elisp code ensures that pizauth server is running; opens the approval-URL in my browser; and asks me if i have clicked the button in the browser, before it fetches the emails.

as a final step, i'm going to set up mu as gnus search backend. just like i do for my personal emails on my personal computer.

#emacs #gnus #mail #email #outlook #microsoft #oauth #oauth2 #mbsync #isync #msmtp

@ericsfraga Have you set up replying to things in #gnus?

Ah, the lengths I go to just to be able to read everything (not just email) via Emacs gnus! ๐Ÿค”

I subscribe to RSS feeds for individual mastodon (and others) users and a variety of hashtags (guess which ones? ๐Ÿ˜‰). I have created a virtual gnus group which brings together articles from all my RSS groups (regex pattern "^nnrss:.*"). Now when I visit that virtual group, I get the benefits of *adaptive scoring* for the accounts and hashtags in the fediverse! Those toots I am most likely to be interested in appear first in the virtual group and those that I am least likely to be interested in reading are at the bottom with some already marked as read due to a low score.

So my **algorithm** for the fediverse is adaptive scoring as provided by gnus. ๐Ÿ˜€

#gnus #Emacs #fediverse

Well y'all Android users, I've failed you. I've failed you all. Spectacularly.

I have selfishly decided to just get my Gmail working with Emacs Gnus using an app specific password instead of working on Fair Mail. I'm not sorry. However, I am sorry that I'm not sorry.

#emacs #termux #emacspeak #gnus

Finally! I managed to properly setup Gnus for my set of maildirs. Before, I set a bunch of paths to my maildirs in the gnus-secondary-select-methods, like:

'((nnmaildir "mail1" (directory "~/mail/mail1"))
(nnmaildir "mail2" (directory "~/mail/mail2")))

And then I was unable to subscribe to these maildirs with the help of ^ and u keys in Gnus.

But, after another reread of documentation and blogposts, I found that I should not specify path to mine maildirs for the nnmaildir. I should specify path to the filesystem directory, containing my maildirs:

'((nnmaildir "mail" (directory "~/mail")))

After that subscription to maildirs in the Gnus interface is worked and I able to see my maildirs and e-mails 

#Emacs #Gnus

more progress, though the messages somehow are different from what I put in...

#gnus #emacs

@bartk BTW this package seems to already work pretty much, I will likely just copy paste stuff from it and replace with fj.el

#emacs #gnus

After endless debugging and reading endless #gnus backends. I have finally displayed my first article (though it is dummy).

It turns out I was debugging the wrong functions, my retrieve-headers function was the problem, not request-group.

#emacs

UAHGHHGH WHY IS IT SO HARD TO WRITE A GNUS BACKEND??!?

#emacs #gnus

foot guix shell -C --preserve='^DISPLAY$' --preserve='^TERM$' --preserve='^XAUTHORITY$' emacs-next -- emacs --eval "(set-face-attribute 'default nil :height 210)" -q . -L . --eval "(setopt gnus-select-method '(nnforgejo \"test\"))"

this makes it show up in gnus, but still not in autocompletion SMH

#emacs #guix #gnus