4 ms·
Don't give up on Gnus, it's still got plenty of life in it!
by girzel 9y ago
Don't give up on Gnus, it's still got plenty of life in it!
- nextos 9y agoOh, I love Gnus. Do you use Gnus? The code is a bit messy. It needs a huge refactoring. Things have accumulated some cruft since first version, released in 1987. It's also a bit slow unless you run a local Dovecot instance, which I dislike. Magit and Org are Emacs killer applications. I wish we could fund some developer to refactor Gnus and port some ideas from Notmuch.
- girzel 9y agoI agree with all of the above! I do use it, and am working on refactoring it (very slowly). I wrote a generalized search language for it a few months ago, which relieved some of the searching pain, but it is waiting for another rather large code update to go in before it can land. I've been looking at how to clean up and "modernize" the code over the past few weeks, and hopefully will slowly start making commits. I've got a roadmap document I might try to add to the Emacs repo.
- nextos 9y agoAwesome! Maybe if you think you have good ideas you should seek some funding from the community after your code gets a bit of momentum. What do you think about nnir-notmuch? Aside, don't you think it'd be easier to reimplement a big chunk of Gnus based on the principles of Notmuch? That is, make everything work on tags only and delegate all tags-to-files mapping to a backend (possibly written on some expressive Elisp DSL)?
- girzel 9y agoAsking for money might be a bit much! It's still Lars' package, after all, and no one has asked for money for it so far. Plus, I'd be afraid of the "you broke it, you bought it" policy – I don't want to be responsible for the whole thing! Just the servers and groups and marks bit of it. And search, I guess. I'm just planning on making incremental changes. What you describe about reworking Gnus to be more like Notmuch wouldn't necessarily take that much work. Gnus doesn't do any searching itself, it just delegates to a search engine like Notmuch or Mairix or the built-in IMAP engine. Gnus and IMAP are very much married to the idea of groups/folders, but none of the other search engines are. They return their results regardless of group/folder, and then Gnus actually goes to the work of filtering out results that aren't in the selected group(s). All that's needed is to make it easier for the user to launch a search of an entire server, without forcing them to select which groups to use. This would suck for IMAP searches, but work just fine with other search backends. If Andy Cohen's work on nnselect could land, then I could finish work on the generalized search backend. That would allow you to issue a single search against different backends (say a local maildir indexed with Notmuch, and a remote IMAP server). The search would be translated for the different backends, and all the results displayed together in one group.
- nextos 9y agoSounds great to hear there's some active development going on Gnus! As a user I was a bit upset with things slowing down. I look forward to testing all these new search improvements. Thanks for taking the time to write this up. I tried to hack a bit on Gnus, but I admittedly found the codebase quite overwhelming compared to Mu4e or Notmuch, which are an order of magnitude simpler and thus easier.