Gnus development mailing list
 help / color / mirror / Atom feed
* The current state of gnus-cloud
@ 2022-03-05 15:50 Steinar Bang
  0 siblings, 0 replies; only message in thread
From: Steinar Bang @ 2022-03-05 15:50 UTC (permalink / raw)
  To: ding

Just a summary of my experiences in using gnus-cloud.

As a recap: gnus-cloud adds IMAP-like capabilities to Gnus nntp groups:
you can see the same read, unread/ticket and replied to messages from
different gnus instances.

In addition gnus-cloud can sync the gnus config (which I don't want,
since both ~/.emacs and ~/.gnus.el are git-versioned for me, with one
branch per client), and the gnus score files.

I'm currently running gnus-cloud on two separate machines, a debian
GNU/linux desktop, and a windows 10 laptop.

This works well for the read mark sync, not so well for the file sync
(more detail below) and has an annoying effect in that the nnimap server
used for sync can't use the gnus agent (this affects both the performace
for reading nnimap groups and connectivity for the laptop. I have to
manually enter the server buffer and open the nnimap server after a
laptop sleep).

I'm running emacs 27 on both machines.

The gnus-cloud delivered with the gnus of emacs 27, doesn't work well,
so what I've done, is:
 1. Fork the emacs-27 git branch [1]
 2. Replace gnus-cloud.el in the branch with the emacs 28 version of
    gnus-cloud.el [2] 
 3. Add the gnus directory of the forked emacs 27, with gnus-cloud.el
    replaced to the load-path [3]
 4. Fix an incompatibility with emacs-27 in gnus-cloud.el [4]
 5. Make file sync of gnus-cloud.el tolerant of trying to sync multiple
    deltas, by allowing the overwrite of existing backup files [5]

In my config I have changed storage encoding from the default EPG to "no
encoding", which was the only one I could make work.

I've also switched off config sync, since my config is git versioned:

 (setq gnus-cloud-storage-method nil)
 (setq gnus-cloud-synced-files '((:directory "~/News" :match ".*.SCORE\\'")))

On the windows client, I ended up disabling file sync completely since
the emacs rename function fails on file names with ":" in them, and the
score files contains ":" as part of their file name[6][7] (the emacs
rename function is used to move the existing file to a backup file
before copying in the synced file):

 (setq gnus-cloud-storage-method nil)
 (setq gnus-cloud-synced-files nil)

References:
[1] <https://github.com/steinarb/emacs-gnus-cloud-sb/tree/emacs-27-with-gnus-cloud-from-emacs-28>
[2] <https://github.com/steinarb/emacs-gnus-cloud-sb/commit/a33240a8145edcf1341bfd35498d81021f399c74>
[3] <https://gist.github.com/steinarb/fd844fca4d0627b2a9efa2fd46cdf1ad>
[4] <https://github.com/steinarb/emacs-gnus-cloud-sb/commit/a33240a8145edcf1341bfd35498d81021f399c74>
[5] <https://github.com/steinarb/emacs-gnus-cloud-sb/commit/a507db488fc0a5761111e618956740b80301418c>
[6] <https://lists.gnu.org/archive/html/help-gnu-emacs/2022-02/msg00282.html>
[7] <https://lists.gnu.org/archive/html/help-gnu-emacs/2022-02/msg00286.html>



^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2022-03-05 15:50 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-03-05 15:50 The current state of gnus-cloud Steinar Bang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).