unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
* bug#43960: incompatible bytecode version
@ 2020-10-12 12:54 Дмитрий Поляков
  2020-10-12 15:29 ` zimoun
  2020-10-12 16:07 ` bug#43960: Дмитрий Поляков
  0 siblings, 2 replies; 13+ messages in thread
From: Дмитрий Поляков @ 2020-10-12 12:54 UTC (permalink / raw)
  To: 43960

[-- Attachment #1: Type: text/plain, Size: 2806 bytes --]

;;; In procedure load-thunk-from-memory: incompatible bytecode version

;;; WARNING: loading compiled file
/run/current-system/profile/lib/guile/3.0/site-ccache/gnu/packages/mtools.go
failed:

;;; In procedure load-thunk-from-memory: incompatible bytecode version

;;; WARNING: loading compiled file
/gnu/store/kn4sqrhnbklqii9ac0xbljkhwg3p2g1m-guix-module-union/lib/guile/3.0/site-ccache/guix.go
failed:

;;; In procedure load-thunk-from-memory: incompatible bytecode version

;;; WARNING: loading compiled file
/run/current-system/profile/lib/guile/3.0/site-ccache/guix.go failed:

;;; In procedure load-thunk-from-memory: incompatible bytecode version

;;; WARNING: loading compiled file
/gnu/store/kn4sqrhnbklqii9ac0xbljkhwg3p2g1m-guix-module-union/lib/guile/3.0/site-ccache/guix/monad-repl.go
failed:

;;; In procedure load-thunk-from-memory: incompatible bytecode version

;;; WARNING: loading compiled file
/run/current-system/profile/lib/guile/3.0/site-ccache/guix/monad-repl.go
failed:

;;; In procedure load-thunk-from-memory: incompatible bytecode version

Backtrace:

          19 (_ #<procedure 7f562e23f6c0 at ice-9/eval.scm:330:13 ()> …)

          18 (_ #<procedure 7f562e23f3e0 at ice-9/eval.scm:330:13 ()> …)

In ice-9/eval.scm:

   191:27 17 (_ #(#(#<directory (guix store) 7f5643a77000> #<pr…>) …))

   196:35 16 (_ #(#(#(#<directory (guix store) 7f5643a77000> …) #) #))

   298:34 15 (_ #(#(#(#<directory (guix channels) 7f563d5da140>) …) …))

In ice-9/boot-9.scm:

   2806:4 14 (save-module-excursion _)

    152:2 13 (with-fluid* _ _ _)

In unknown file:

          12 (primitive-load "/gnu/store/72dq02lisz4w74iphp4a8agjsp0…")

In ice-9/eval.scm:

   626:19 11 (_ #<directory (build-self) 7f563c4778c0>)

   293:34 10 (_ #<directory (build-self) 7f563c4778c0>)

   293:34  9 (_ #(#(#<directory (gnu packages) 7f563f504640>) "gu…" …))

    619:8  8 (_ #(#(#(#<directory (gnu packages) 7f563f504640>) …) #))

   626:19  7 (_ #(#(#(#<directory (gnu packages) 7f563f504640>) …) #))

   293:34  6 (_ #(#(#(#<directory (guix memoization) 7f5643…> …) …) …))

In ice-9/boot-9.scm:

  1731:15  5 (with-exception-handler #<procedure 7f56238671b0 at ic…> …)

In ice-9/eval.scm:

    619:8  4 (_ #(#(#(#<directory (gnu packages) 7f563f504640> #)) #))

   626:19  3 (_ #(#(#(#<directory (gnu packages) 7f563f504640> #)) #))

In unknown file:

           2 (load-compiled/vm "/home/lil/.config/guix/current/lib/g…")

In ice-9/boot-9.scm:

  1669:16  1 (raise-exception _ #:continuable? _)

  1669:16  0 (raise-exception _ #:continuable? _)


ice-9/boot-9.scm:1669:16: In procedure raise-exception:

In procedure load-thunk-from-memory: incompatible bytecode version

[-- Attachment #2: Type: text/html, Size: 4846 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#43960: incompatible bytecode version
  2020-10-12 12:54 bug#43960: incompatible bytecode version Дмитрий Поляков
@ 2020-10-12 15:29 ` zimoun
  2020-10-12 16:07 ` bug#43960: Дмитрий Поляков
  1 sibling, 0 replies; 13+ messages in thread
From: zimoun @ 2020-10-12 15:29 UTC (permalink / raw)
  To: Дмитрий Поляков
  Cc: 43960

Dear,

Could you please provide more information on what you did?  Or how can
I reproduce your report?

Thank you in advance.

All the best,
simon




^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#43960:
  2020-10-12 12:54 bug#43960: incompatible bytecode version Дмитрий Поляков
  2020-10-12 15:29 ` zimoun
@ 2020-10-12 16:07 ` Дмитрий Поляков
  2020-10-12 17:53   ` bug#43960: Tobias Geerinckx-Rice via Bug reports for GNU Guix
  1 sibling, 1 reply; 13+ messages in thread
From: Дмитрий Поляков @ 2020-10-12 16:07 UTC (permalink / raw)
  To: 43960

[-- Attachment #1: Type: text/plain, Size: 261 bytes --]

When I type with sudo:
https://paste.debian.net/1166846

Output from guix system reconfigure /etc/config.scm
https://paste.debian.net/1166847

my env
https://paste.debian.net/1166848

my bashrc
https://github.com/Lenin1917/dotfiles/blob/master/shell/dot-bashrc

[-- Attachment #2: Type: text/html, Size: 750 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#43960:
  2020-10-12 16:07 ` bug#43960: Дмитрий Поляков
@ 2020-10-12 17:53   ` Tobias Geerinckx-Rice via Bug reports for GNU Guix
  2020-10-15  7:53     ` bug#43960: Ludovic Courtès
  0 siblings, 1 reply; 13+ messages in thread
From: Tobias Geerinckx-Rice via Bug reports for GNU Guix @ 2020-10-12 17:53 UTC (permalink / raw)
  To: Дмитрий Поляков
  Cc: 43960

[-- Attachment #1: Type: text/plain, Size: 812 bytes --]

Дмитрий Поляков 写道:
> When I type with sudo:
> lil@guix ~
> $ sudo guix pull

Never run ‘guix pull’ with sudo!

Why is explained in the manual (3.7 After System Installation). 
While guix could detect and warn about it (and I'm sure that's 
already been proposed) you should always read the manual before 
typing commands.

Please run (and post the output of):

  $ type guix
  $ ls -l ~/.config/guix/current
  $ sudo rm ~/.config/guix/current
  $ /run/current-system/profile/bin/guix pull
  $ hash guix
  $ type guix

This should print

  guix is /home/nckx/.config/guix/current/bin/guix

If so, the following command will reconfigure your system using 
your guix, not root's guix:

  $ sudo guix system reconfigure /etc/config.scm

Kind regards,

T G-R

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 247 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#43960:
  2020-10-12 17:53   ` bug#43960: Tobias Geerinckx-Rice via Bug reports for GNU Guix
@ 2020-10-15  7:53     ` Ludovic Courtès
  2020-10-15  9:47       ` bug#43960: zimoun
  0 siblings, 1 reply; 13+ messages in thread
From: Ludovic Courtès @ 2020-10-15  7:53 UTC (permalink / raw)
  To: Tobias Geerinckx-Rice
  Cc: 43960,
	Дмитрий Поляков

Hi,

Tobias Geerinckx-Rice <me@tobias.gr> skribis:

> Дмитрий Поляков 写道:
>> When I type with sudo:
>> lil@guix ~
>> $ sudo guix pull
>
> Never run ‘guix pull’ with sudo!
>
> Why is explained in the manual (3.7 After System Installation). While
> guix could detect and warn about it (and I'm sure that's already been
> proposed) you should always read the manual before typing commands.

I don’t think it’s a reasonable response: it’s a fact that we naturally
tend to read manuals sparsely, at best.

Since the pastes vanished, how did ‘sudo guix pull’ lead to incompatible
bytecode warnings?

Thanks,
Ludo’.




^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#43960:
  2020-10-15  7:53     ` bug#43960: Ludovic Courtès
@ 2020-10-15  9:47       ` zimoun
  2020-10-15 13:52         ` bug#43960: Bengt Richter
  2021-11-21  6:18         ` bug#43960: incompatible bytecode version Maxim Cournoyer
  0 siblings, 2 replies; 13+ messages in thread
From: zimoun @ 2020-10-15  9:47 UTC (permalink / raw)
  To: Ludovic Courtès
  Cc: 43960,
	Дмитрий Поляков

Hi,

On Thu, 15 Oct 2020 at 09:53, Ludovic Courtès <ludo@gnu.org> wrote:

> I don’t think it’s a reasonable response: it’s a fact that we naturally
> tend to read manuals sparsely, at best.
>
> Since the pastes vanished, how did ‘sudo guix pull’ lead to incompatible
> bytecode warnings?

If I remember correctly (which is neither a reasonable response :-)), it
should highly come from the user config.  And the investigation needs
more information, e.g., as Tobias asks: the output of:

  $ type guix
  $ ls -l ~/.config/guix/current
  $ sudo rm ~/.config/guix/current
  $ /run/current-system/profile/bin/guix pull
  $ hash guix
  $ type guix

All the best,
simon




^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#43960:
  2020-10-15  9:47       ` bug#43960: zimoun
@ 2020-10-15 13:52         ` Bengt Richter
  2020-10-15 13:56           ` bug#43960: zimoun
  2021-11-21  6:18         ` bug#43960: incompatible bytecode version Maxim Cournoyer
  1 sibling, 1 reply; 13+ messages in thread
From: Bengt Richter @ 2020-10-15 13:52 UTC (permalink / raw)
  To: zimoun
  Cc: 43960,
	Дмитрий Поляков

On +2020-10-15 11:47:30 +0200, zimoun wrote:
> Hi,
> 
> On Thu, 15 Oct 2020 at 09:53, Ludovic Courtès <ludo@gnu.org> wrote:
> 
> > I don’t think it’s a reasonable response: it’s a fact that we naturally
> > tend to read manuals sparsely, at best.
> >
> > Since the pastes vanished, how did ‘sudo guix pull’ lead to incompatible
> > bytecode warnings?
> 
> If I remember correctly (which is neither a reasonable response :-)), it
> should highly come from the user config.  And the investigation needs
> more information, e.g., as Tobias asks: the output of:
> 
>   $ type guix
>   $ ls -l ~/.config/guix/current
>   $ sudo rm ~/.config/guix/current
>   $ /run/current-system/profile/bin/guix pull
>   $ hash guix
>   $ type guix
> 
> All the best,
> simon
>

If there is a left-over from old manual installation advice like
--8<---------------cut here---------------start------------->8---
/usr/local/bin/guix:
    symbolic link to /var/guix/profiles/per-user/root/current-guix/bin/guix
--8<---------------cut here---------------end--------------->8---
could it interfere in any way with the above, or subsequent operation?

-- 
Regards,
Bengt Richter




^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#43960:
  2020-10-15 13:52         ` bug#43960: Bengt Richter
@ 2020-10-15 13:56           ` zimoun
  2020-10-15 16:39             ` bug#43960: Bengt Richter
  0 siblings, 1 reply; 13+ messages in thread
From: zimoun @ 2020-10-15 13:56 UTC (permalink / raw)
  To: Bengt Richter
  Cc: 43960,
	Дмитрий Поляков

Hi Bengt,

On Thu, 15 Oct 2020 at 15:53, Bengt Richter <bokr@bokr.com> wrote:

> If there is a left-over from old manual installation advice like
> --8<---------------cut here---------------start------------->8---
> /usr/local/bin/guix:
>     symbolic link to /var/guix/profiles/per-user/root/current-guix/bin/guix
> --8<---------------cut here---------------end--------------->8---
> could it interfere in any way with the above, or subsequent operation?

You mean the step #6 from the manual [1], right?

1: <https://guix.gnu.org/devel/manual/en/guix.html#Binary-Installation>


All the best,
simon




^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#43960:
  2020-10-15 13:56           ` bug#43960: zimoun
@ 2020-10-15 16:39             ` Bengt Richter
  2020-10-19 17:01               ` bug#43960: zimoun
  0 siblings, 1 reply; 13+ messages in thread
From: Bengt Richter @ 2020-10-15 16:39 UTC (permalink / raw)
  To: zimoun
  Cc: 43960,
	Дмитрий Поляков

Hi Simon,

On +2020-10-15 15:56:41 +0200, zimoun wrote:
> Hi Bengt,
> 
> On Thu, 15 Oct 2020 at 15:53, Bengt Richter <bokr@bokr.com> wrote:
> 
> > If there is a left-over from old manual installation advice like
> > --8<---------------cut here---------------start------------->8---
> > /usr/local/bin/guix:
> >     symbolic link to /var/guix/profiles/per-user/root/current-guix/bin/guix
> > --8<---------------cut here---------------end--------------->8---
> > could it interfere in any way with the above, or subsequent operation?
> 
> You mean the step #6 from the manual [1], right?
>

Yes. I didn't realize it was still there -- I may mis-remember some discussion
deprecating the use of /usr/local/* to affect the namespace seen when typing guix whatever.
(vs putting needed info in ~/.bash_profile or ~/.profile)

I.e., even though the target is /var/guix/... it is not by way of ~/.guix-profile unless
that's been put first in the path via ~/.bash_profile.

But /usr/local/bin is typically on a default PATH, so could you not accidentally see the
wrong guix (rather than a more informative file-not-found) if the enviroment was not
straight-forwardly inherited from a normal login? (e.g. emacs subshell pts? Haven't checked ;)

Also doesn't the ".../per-user/root/..." part in the link make you dependent
on the result of _sudo_ guix pull, not plain guix pull? (or are they equivalent somehow?)

IDK, but I really don't like typing "sudo guix ..." any better than "sudo firefox" or "sudo python"
or "sudo <anything I can't completely predict what files condition the outputs or where they go>"

I hope we can get to 100%-user-mode guix. Maybe offloading to containerized guix
systems could be a model for swarms of cooperating user-mode peers (modulo some protocol
for synchronizing versions identified by guix describe) for distributed challenges,
and normal usage would run guix with a localhost swarm providing the guix user-mode-daemons ;)

> 1: <https://guix.gnu.org/devel/manual/en/guix.html#Binary-Installation>
> 
> 
> All the best,
> simon

Sorry if this is only illustrating my noob misconceptions :)

-- 
Regards,
Bengt Richter




^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#43960:
  2020-10-15 16:39             ` bug#43960: Bengt Richter
@ 2020-10-19 17:01               ` zimoun
  2020-10-25 22:33                 ` bug#43960: Miguel Ángel Arruga Vivas
  0 siblings, 1 reply; 13+ messages in thread
From: zimoun @ 2020-10-19 17:01 UTC (permalink / raw)
  To: Bengt Richter
  Cc: 43960,
	Дмитрий Поляков

Dear,

On Thu, 15 Oct 2020 at 18:39, Bengt Richter <bokr@bokr.com> wrote:
>> On Thu, 15 Oct 2020 at 15:53, Bengt Richter <bokr@bokr.com> wrote:
>> 
>> > If there is a left-over from old manual installation advice like
>> > --8<---------------cut here---------------start------------->8---
>> > /usr/local/bin/guix:
>> >     symbolic link to /var/guix/profiles/per-user/root/current-guix/bin/guix
>> > --8<---------------cut here---------------end--------------->8---
>> > could it interfere in any way with the above, or subsequent operation?

I do not think it interferes.


> Yes. I didn't realize it was still there -- I may mis-remember some discussion
> deprecating the use of /usr/local/* to affect the namespace seen when typing
> guix whatever.
> (vs putting needed info in ~/.bash_profile or ~/.profile)

I am not sure to understand what you mean.  I should have missed such
discussions.  Do you have pointers?


> I.e., even though the target is /var/guix/... it is not by way of
> ~/.guix-profile unless
> that's been put first in the path via ~/.bash_profile.
>
> But /usr/local/bin is typically on a default PATH, so could you not
> accidentally see the
> wrong guix (rather than a more informative file-not-found) if the enviroment
> was not
> straight-forwardly inherited from a normal login? (e.g. emacs subshell pts?
> Haven't checked ;)

I am sorry, I do not understand your point.  On Debian, fresh user:

--8<---------------cut here---------------start------------->8---
$ ls -a
.  ..  .bash_logout  .bashrc  .profile
$ which guix
/usr/local/bin/guix
$ guix pull
[..]
hint: Consider setting the necessary environment variables by running:

     GUIX_PROFILE="/home/kikoo/.config/guix/current"
     . "$GUIX_PROFILE/etc/profile"

Alternately, see `guix package --search-paths -p "/home/kikoo/.config/guix/current"'.


hint: Run `guix pull --news' to read all the news.

hint: After setting `PATH', run `hash guix' to make sure your shell refers to
`/home/kikoo/.config/guix/current/bin/guix'.

$ guix pull # again
nothing to be done

hint: Run `guix pull --news' to read all the news.

hint: After setting `PATH', run `hash guix' to make sure your shell refers to
`/home/kikoo/.config/guix/current/bin/guix'.
--8<---------------cut here---------------end--------------->8---

Is your point that:

   guix install hello

will install ’hello’ from the Guix at version of ’/usr/local/bin/guix’?
Well, if you see improvements in this area, please open a separate
bug/whishlist report.


All the best,
simon




^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#43960:
  2020-10-19 17:01               ` bug#43960: zimoun
@ 2020-10-25 22:33                 ` Miguel Ángel Arruga Vivas
  2020-10-26 15:06                   ` bug#43960: zimoun
  0 siblings, 1 reply; 13+ messages in thread
From: Miguel Ángel Arruga Vivas @ 2020-10-25 22:33 UTC (permalink / raw)
  To: zimoun
  Cc: 43960,
	Дмитрий Поляков

Hi,

I'm hitting this while testing some patches too.

[env]$ make check-system TESTS=encrypted-root-and-boot-os
[...]
successfully built /gnu/store/32qhcfz3amwq9zisqnagdvrlpl3lr82a-guix-system-tests-modules.drv
building /gnu/store/dsq1i6hfhqnx25gsa5m00q9a7d1vshql-module-import-compiled.drv...
[ 1/88] Loading './gnu/build/accounts.scm'...
[ 2/88] Loading './gnu/build/file-systems.scm'...
;;; WARNING: loading compiled file /gnu/store/y1gzzlm1da2i5j60nws3iqrgnck6bhnn-guix-1.1.0-30.875c01f/lib/guile/3.0/site-ccache/guix/records.go failed:
;;; In procedure load-thunk-from-memory: incompatible bytecode version
;;; WARNING: loading compiled file /gnu/store/y1gzzlm1da2i5j60nws3iqrgnck6bhnn-guix-1.1.0-30.875c01f/lib/guile/3.0/site-ccache/guix/combinators.go failed:
[...]

It compiles the modules afterwards (my test fails too, but it shouldn't
be related to this).

How could I check what's happenning?

Happy hacking!
Miguel




^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#43960:
  2020-10-25 22:33                 ` bug#43960: Miguel Ángel Arruga Vivas
@ 2020-10-26 15:06                   ` zimoun
  0 siblings, 0 replies; 13+ messages in thread
From: zimoun @ 2020-10-26 15:06 UTC (permalink / raw)
  To: Miguel Ángel Arruga Vivas
  Cc: 43960,
	Дмитрий Поляков

Hi,

On Sun, 25 Oct 2020 at 23:33, Miguel Ángel Arruga Vivas <rosen644835@gmail.com> wrote:

> I'm hitting this while testing some patches too.

Well, I do not know if it is related to the initial bug.


> [env]$ make check-system TESTS=encrypted-root-and-boot-os
> [...]
> successfully built /gnu/store/32qhcfz3amwq9zisqnagdvrlpl3lr82a-guix-system-tests-modules.drv
> building /gnu/store/dsq1i6hfhqnx25gsa5m00q9a7d1vshql-module-import-compiled.drv...
> [ 1/88] Loading './gnu/build/accounts.scm'...
> [ 2/88] Loading './gnu/build/file-systems.scm'...
> ;;; WARNING: loading compiled file /gnu/store/y1gzzlm1da2i5j60nws3iqrgnck6bhnn-guix-1.1.0-30.875c01f/lib/guile/3.0/site-ccache/guix/records.go failed:
> ;;; In procedure load-thunk-from-memory: incompatible bytecode version
> ;;; WARNING: loading compiled file /gnu/store/y1gzzlm1da2i5j60nws3iqrgnck6bhnn-guix-1.1.0-30.875c01f/lib/guile/3.0/site-ccache/guix/combinators.go failed:
> [...]
>
> It compiles the modules afterwards (my test fails too, but it shouldn't
> be related to this).
>
> How could I check what's happenning?

Sometimes, I have remarked that “guix environment -C guix” then
“./bootstrap && ./configure” and “make” plus some tweaks; days later, I
re-rerun “guix environment -C guix” and directly run some “make foo” and
there some “incompatible” happens.  Therefore, I re-run “./bootstrap &&
./configure”.  And « days later » means that I did “guix pull” between
the 2 “guix environment”.

I do not know.


All the best,
simon




^ permalink raw reply	[flat|nested] 13+ messages in thread

* bug#43960: incompatible bytecode version
  2020-10-15  9:47       ` bug#43960: zimoun
  2020-10-15 13:52         ` bug#43960: Bengt Richter
@ 2021-11-21  6:18         ` Maxim Cournoyer
  1 sibling, 0 replies; 13+ messages in thread
From: Maxim Cournoyer @ 2021-11-21  6:18 UTC (permalink / raw)
  To: zimoun
  Cc: 43960-done,
	Дмитрий Поляков

Hello,

zimoun <zimon.toutoune@gmail.com> writes:

> Hi,
>
> On Thu, 15 Oct 2020 at 09:53, Ludovic Courtès <ludo@gnu.org> wrote:
>
>> I don’t think it’s a reasonable response: it’s a fact that we naturally
>> tend to read manuals sparsely, at best.
>>
>> Since the pastes vanished, how did ‘sudo guix pull’ lead to incompatible
>> bytecode warnings?
>
> If I remember correctly (which is neither a reasonable response :-)), it
> should highly come from the user config.  And the investigation needs
> more information, e.g., as Tobias asks: the output of:
>
>   $ type guix
>   $ ls -l ~/.config/guix/current
>   $ sudo rm ~/.config/guix/current
>   $ /run/current-system/profile/bin/guix pull
>   $ hash guix
>   $ type guix

Yes, and we haven't gotten any of that information in a year.

Дмитрий, I'll close this old report which I don't see actionable, but if
you get hit by the problem again, it'd be helpful if you could capture
the above detail and what led you to the problem.

Thanks!

Maxim




^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2021-11-21  6:19 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-10-12 12:54 bug#43960: incompatible bytecode version Дмитрий Поляков
2020-10-12 15:29 ` zimoun
2020-10-12 16:07 ` bug#43960: Дмитрий Поляков
2020-10-12 17:53   ` bug#43960: Tobias Geerinckx-Rice via Bug reports for GNU Guix
2020-10-15  7:53     ` bug#43960: Ludovic Courtès
2020-10-15  9:47       ` bug#43960: zimoun
2020-10-15 13:52         ` bug#43960: Bengt Richter
2020-10-15 13:56           ` bug#43960: zimoun
2020-10-15 16:39             ` bug#43960: Bengt Richter
2020-10-19 17:01               ` bug#43960: zimoun
2020-10-25 22:33                 ` bug#43960: Miguel Ángel Arruga Vivas
2020-10-26 15:06                   ` bug#43960: zimoun
2021-11-21  6:18         ` bug#43960: incompatible bytecode version Maxim Cournoyer

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).