From: Johannes Schindelin <Johannes.Schindelin@gmx•de>
To: Patrick Steinhardt <ps@pks•im>
Cc: Junio C Hamano <gitster@pobox•com>,
git@vger•kernel.org,
"Haelwenn (lanodan) Monnier" <contact@hacktivis•me>,
"brian m. carlson" <sandals@crustytoothpaste•net>,
Ben Knoble <ben.knoble@gmail•com>,
Christian Brabandt <cb@256bit•org>,
Collin Funk <collin.funk1@gmail•com>,
Eli Schwartz <eschwartz@gentoo•org>,
Elijah Newren <newren@gmail•com>,
Ezekiel Newren <ezekielnewren@gmail•com>,
Phillip Wood <phillip.wood123@gmail•com>,
Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm•com>,
Sam James <sam@gentoo•org>, Taylor Blau <me@ttaylorr•com>
Subject: LTS "lieutenant", was Re: [PATCH RFC v4 7/9] BreakingChanges: announce Rust becoming mandatory
Date: Tue, 23 Sep 2025 10:53:02 +0200 (CEST) [thread overview]
Message-ID: <61e4895a-415e-f2ba-97d7-23aa99334191@gmx.de> (raw)
In-Reply-To: <aNIw23JzQE1vz2JD@pks.im>
Hi Patrick,
On Tue, 23 Sep 2025, Patrick Steinhardt wrote:
> On Mon, Sep 22, 2025 at 09:24:26AM -0700, Junio C Hamano wrote:
> > Patrick Steinhardt <ps@pks•im> writes:
> >
> > >> I am having a hard time imagining the practicality of this "hand
> > >> over but we still review" arrangement. Some of the security fixes
> > >> are embargoed, and the reason why we are jetissoning the stale
> > >> codebase is presumably because nobody is willing to work on it other
> > >> than the "community support" folks. I can imagine that we would
> > >> qualify them into the git-security cabal and let them use the forum
> > >> to coordinate among themselves, but then to what degree in the
> > >> "community support themselves" process is our involvement expected?
> > >> As long as we can make sure that they do not leak before the
> > >> official embargoed release, they do not need an official stamp of
> > >> approval from the project or by the Git maintainer---that is what it
> > >> means to "hand over maintainer ship", at least to me.
> > >>
> > >> In other words, I like what I see in this paragraph, but I do not
> > >> think we can practically live with the part of the sentence after
> > >> the last ", but".
> > >
> > > I think the most important part here is that this community-supported
> > > LTS release should still live in the canonical repositories. We should
> > > avoid the situation where we hand over maintainership to such a degree
> > > that the end result (the tagged LTS release) lives somewhere else.
> >
> > Why is it a bad thing? The official repository can have a README.md
> > with a single entry "maintenance releases for Git 2.98 LTS (most
> > notably with no Rust requirements) are found at this separate site".
>
> There's a couple reasons:
>
> - The LTS maintainer may not be as familiar with the Git codebase as
> we are, so they would benefit from the usual processes on the
> mailing list.
Basically: It's a matter of trust.
> - The LTS maintainer may not be as trusted as other regulars on the
> mailing list are, so we (from my POV) may want to avoid having a
> basically unobserved fork elsewhere.
Basically: It's a matter of trust.
> - The end result would still be "git", and users will come to us to
> complain about issues in the LTS release.
Basically: Users would still only trust the main Git project.
> - Initial releases of the LTS release branch that are managed by us
> would sit in our repo, whereas subsequent releases would sit in the
> LTS release. This will likely cause confusion.
And confusion sows distrust, I agree.
> - We reduce chances of a hard fork of Git.
>
> So with these in mind I think it would be sensible to keep the LTS
> release as part of the canonical repository.
I agree, and I have to say that I am puzzled that it was even a question.
> > So, no, I do not think we should unnecessarily mix community LTS and
> > the main project.
>
> How about the following tradeoff: the community LTS is developed outside
> of the usual Git workflow, for example on a forge, so that the LTS
> maintainers can work in their preferred flow. But eventually, once they
> want to do a release they send a pull request to the Git mailing list
> and then the tag lives in the canonical Git repository.
>
> It gives the LTS maintainers flexibility, but still makes the canonical
> repository the single source of truth for Git releases. Furthermore,
> we'd have a way to double check the results before creating the tags.
I have to admit that it sounds quite odd an idea to "hand off LTS support"
to a completely different entity. It flies counter to everything I have
learned in this industry. There has been exactly zero instance worth
mentioning where an LTS release maintained outside of the main project has
been accepted as anything remotely official. There is no reason to believe
that Git would be the first.
Let me propose an alternative, one that is much more likely to be accepted
by actual Git users, including professional ones: How about assigning a
trusted, prolific Git contributor as LTS maintainer? One who is deeply
familiar with the Git project and can, if the need arises, help the Git
project steer clear of unnecessary conflict-making e.g. via
intentionally-incompatible bug fixes on the non-LTS branch? Kind of like
the lieutenants in the Linux kernel project.
Naturally, I am thinking of you, Patrick. You have demonstrated diligent
work in the Git project, are highly trusted both inside and outside the
Git project, and you seem to genuinely care about the long-term success of
the Git project.
An additional benefit of this would be to have a dependable release policy
for older release trains, just like other projects have. I have heard the
desire for such a policy many times.
Ciao,
Johannes
P.S.: As you probably know from my past interactions on this mailing list,
I am not typically one to dump work on others; I am more than willing to
assist you in the LTS maintenance tasks in any way I can.
next prev parent reply other threads:[~2025-09-23 8:53 UTC|newest]
Thread overview: 210+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-09-04 14:26 [PATCH RFC 0/3] Introduce Rust and announce that it will become mandatorty Patrick Steinhardt
2025-09-04 14:26 ` [PATCH RFC 1/3] meson: add infrastructure to build internal Rust library Patrick Steinhardt
2025-09-04 18:50 ` Junio C Hamano
2025-09-05 7:53 ` Patrick Steinhardt
2025-09-04 22:06 ` brian m. carlson
2025-09-04 22:46 ` Junio C Hamano
2025-09-05 7:49 ` Patrick Steinhardt
2025-09-05 1:16 ` Eli Schwartz
2025-09-05 7:50 ` Patrick Steinhardt
2025-09-05 13:20 ` Eli Schwartz
2025-09-04 14:26 ` [PATCH RFC 2/3] rust: implement a test balloon via the "varint" subsystem Patrick Steinhardt
2025-09-04 22:37 ` brian m. carlson
2025-09-05 7:54 ` Patrick Steinhardt
2025-09-04 23:39 ` Ezekiel Newren
2025-09-05 2:00 ` Eli Schwartz
2025-09-05 7:54 ` Patrick Steinhardt
2025-09-05 13:39 ` Eli Schwartz
2025-09-07 20:07 ` Ben Knoble
2025-09-08 4:39 ` Junio C Hamano
2025-09-08 11:39 ` Patrick Steinhardt
2025-09-09 0:49 ` Ben Knoble
2025-09-09 15:27 ` Junio C Hamano
2025-09-08 6:44 ` Patrick Steinhardt
2025-09-04 14:26 ` [PATCH RFC 3/3] BreakingChanges: announce Rust becoming mandatory Patrick Steinhardt
2025-09-04 17:38 ` Eric Sunshine
2025-09-05 7:54 ` Patrick Steinhardt
2025-09-05 11:50 ` [PATCH RFC v2 0/7] Introduce Rust and announce that it will become mandatorty Patrick Steinhardt
2025-09-05 11:50 ` [PATCH RFC v2 1/7] meson: add infrastructure to build internal Rust library Patrick Steinhardt
2025-09-05 17:47 ` Justin Tobler
2025-09-08 6:42 ` Patrick Steinhardt
2025-09-07 4:54 ` Elijah Newren
2025-09-08 6:42 ` Patrick Steinhardt
2025-09-05 11:50 ` [PATCH RFC v2 2/7] Makefile: introduce " Patrick Steinhardt
2025-09-05 20:21 ` brian m. carlson
2025-09-08 6:40 ` Patrick Steinhardt
2025-09-07 4:58 ` Elijah Newren
2025-09-08 6:41 ` Patrick Steinhardt
2025-09-07 15:26 ` SZEDER Gábor
2025-09-08 6:41 ` Patrick Steinhardt
2025-09-05 11:50 ` [PATCH RFC v2 3/7] help: report on whether or not Rust is enabled Patrick Steinhardt
2025-09-05 19:51 ` brian m. carlson
2025-09-07 5:00 ` Elijah Newren
2025-09-05 11:51 ` [PATCH RFC v2 4/7] rust: implement a test balloon via the "varint" subsystem Patrick Steinhardt
2025-09-05 21:46 ` Junio C Hamano
2025-09-05 22:39 ` Junio C Hamano
2025-09-05 23:04 ` brian m. carlson
2025-09-05 11:51 ` [PATCH RFC v2 5/7] BreakingChanges: announce Rust becoming mandatory Patrick Steinhardt
2025-09-05 12:45 ` Matthias Aßhauer
2025-09-05 13:38 ` Patrick Steinhardt
2025-09-05 14:38 ` Eli Schwartz
2025-09-08 6:42 ` Patrick Steinhardt
2025-09-07 5:31 ` Elijah Newren
2025-09-08 6:42 ` Patrick Steinhardt
2025-09-05 14:22 ` Phillip Wood
2025-09-05 14:32 ` Eli Schwartz
2025-09-05 19:34 ` brian m. carlson
2025-09-07 5:25 ` Elijah Newren
2025-09-05 11:51 ` [PATCH RFC v2 6/7] ci: convert "pedantic" job into full build with breaking changes Patrick Steinhardt
2025-09-07 0:21 ` Junio C Hamano
2025-09-08 6:41 ` Patrick Steinhardt
2025-09-05 11:51 ` [PATCH RFC v2 7/7] ci: enable Rust for breaking-changes jobs Patrick Steinhardt
2025-09-05 19:56 ` brian m. carlson
2025-09-08 6:40 ` Patrick Steinhardt
2025-09-05 21:00 ` Junio C Hamano
2025-09-08 6:40 ` Patrick Steinhardt
2025-09-05 14:14 ` [PATCH RFC v2 0/7] Introduce Rust and announce that it will become mandatorty Phillip Wood
2025-09-05 14:28 ` Patrick Steinhardt
2025-09-07 4:31 ` Elijah Newren
2025-09-08 6:44 ` Patrick Steinhardt
2025-09-08 23:00 ` brian m. carlson
2025-09-10 8:21 ` Patrick Steinhardt
2025-09-09 6:33 ` Elijah Newren
2025-09-10 8:21 ` Patrick Steinhardt
2025-09-09 9:12 ` Phillip Wood
2025-09-10 8:21 ` Patrick Steinhardt
2025-09-10 9:32 ` Phillip Wood
2025-09-10 10:49 ` Patrick Steinhardt
2025-09-08 14:13 ` [PATCH RFC v3 0/8] " Patrick Steinhardt
2025-09-08 14:13 ` [PATCH RFC v3 1/8] meson: add infrastructure to build internal Rust library Patrick Steinhardt
2025-09-08 22:09 ` brian m. carlson
2025-09-09 1:03 ` brian m. carlson
2025-09-10 8:22 ` Patrick Steinhardt
2025-09-08 14:13 ` [PATCH RFC v3 2/8] Makefile: reorder sources after includes Patrick Steinhardt
2025-09-08 14:13 ` [PATCH RFC v3 3/8] Makefile: introduce infrastructure to build internal Rust library Patrick Steinhardt
2025-09-08 14:13 ` [PATCH RFC v3 4/8] help: report on whether or not Rust is enabled Patrick Steinhardt
2025-09-08 14:13 ` [PATCH RFC v3 5/8] rust: implement a test balloon via the "varint" subsystem Patrick Steinhardt
2025-09-08 17:19 ` Ezekiel Newren
2025-09-08 22:22 ` brian m. carlson
2025-09-10 8:22 ` Patrick Steinhardt
2025-09-08 14:13 ` [PATCH RFC v3 6/8] BreakingChanges: announce Rust becoming mandatory Patrick Steinhardt
2025-09-08 14:13 ` [PATCH RFC v3 7/8] ci: convert "pedantic" job into full build with breaking changes Patrick Steinhardt
2025-09-08 14:13 ` [PATCH RFC v3 8/8] ci: enable Rust for breaking-changes jobs Patrick Steinhardt
2025-09-08 14:20 ` [PATCH RFC v3 0/8] Introduce Rust and announce that it will become mandatorty Kristoffer Haugsbakk
2025-09-10 15:35 ` [PATCH RFC v4 0/9] Introduce Rust and announce that it will become mandatory Patrick Steinhardt
2025-09-10 15:35 ` [PATCH RFC v4 1/9] meson: add infrastructure to build internal Rust library Patrick Steinhardt
2025-09-11 21:33 ` brian m. carlson
2026-01-20 22:18 ` [PATCH RFC v4 1/9] meson: add infrastructure to build internal D. Ben Knoble
2026-01-20 23:23 ` [PATCH RFC v4 1/9] meson: add infrastructure to build internalg brian m. carlson
2026-01-21 8:00 ` Patrick Steinhardt
2025-09-10 15:35 ` [PATCH RFC v4 2/9] Makefile: reorder sources after includes Patrick Steinhardt
2025-09-10 15:35 ` [PATCH RFC v4 3/9] Makefile: introduce infrastructure to build internal Rust library Patrick Steinhardt
2025-09-10 15:35 ` [PATCH RFC v4 4/9] help: report on whether or not Rust is enabled Patrick Steinhardt
2025-09-10 15:35 ` [PATCH RFC v4 5/9] varint: use explicit width for integers Patrick Steinhardt
2025-09-10 21:04 ` Junio C Hamano
2025-09-10 15:35 ` [PATCH RFC v4 6/9] varint: reimplement as test balloon for Rust Patrick Steinhardt
2025-09-10 15:35 ` [PATCH RFC v4 7/9] BreakingChanges: announce Rust becoming mandatory Patrick Steinhardt
2025-09-10 21:20 ` Junio C Hamano
2025-09-15 10:53 ` Patrick Steinhardt
2025-09-22 16:24 ` Junio C Hamano
2025-09-23 5:32 ` Patrick Steinhardt
2025-09-23 8:53 ` Johannes Schindelin [this message]
2025-09-24 13:47 ` LTS "lieutenant", was " Patrick Steinhardt
2025-09-23 14:31 ` Junio C Hamano
2025-09-24 12:53 ` Patrick Steinhardt
2025-09-24 17:43 ` Junio C Hamano
2025-09-10 21:42 ` Kristoffer Haugsbakk
2025-09-15 10:53 ` Patrick Steinhardt
2025-09-10 15:35 ` [PATCH RFC v4 8/9] ci: convert "pedantic" job into full build with breaking changes Patrick Steinhardt
2025-09-10 15:35 ` [PATCH RFC v4 9/9] ci: enable Rust for breaking-changes jobs Patrick Steinhardt
2025-09-11 21:55 ` [PATCH RFC v4 0/9] Introduce Rust and announce that it will become mandatory brian m. carlson
2025-09-15 10:53 ` Patrick Steinhardt
2025-09-12 15:45 ` SZEDER Gábor
2025-09-12 16:32 ` Junio C Hamano
2025-09-15 10:50 ` Patrick Steinhardt
2025-09-15 11:22 ` [PATCH v5 " Patrick Steinhardt
2025-09-15 11:22 ` [PATCH v5 1/9] meson: add infrastructure to build internal Rust library Patrick Steinhardt
2025-09-15 11:22 ` [PATCH v5 2/9] Makefile: reorder sources after includes Patrick Steinhardt
2025-09-15 11:22 ` [PATCH v5 3/9] Makefile: introduce infrastructure to build internal Rust library Patrick Steinhardt
2025-09-15 11:22 ` [PATCH v5 4/9] help: report on whether or not Rust is enabled Patrick Steinhardt
2025-09-15 11:22 ` [PATCH v5 5/9] varint: use explicit width for integers Patrick Steinhardt
2025-09-15 11:22 ` [PATCH v5 6/9] varint: reimplement as test balloon for Rust Patrick Steinhardt
2025-09-15 11:22 ` [PATCH v5 7/9] BreakingChanges: announce Rust becoming mandatory Patrick Steinhardt
2025-09-17 22:09 ` SZEDER Gábor
2025-09-18 1:19 ` brian m. carlson
2025-09-22 19:34 ` SZEDER Gábor
2025-09-22 20:59 ` Junio C Hamano
2025-09-22 22:15 ` brian m. carlson
2025-09-22 22:56 ` Junio C Hamano
2025-09-23 1:59 ` Elijah Newren
2025-09-23 4:54 ` Patrick Steinhardt
2025-09-23 14:17 ` Junio C Hamano
2025-09-23 0:43 ` Ezekiel Newren
2025-09-19 13:59 ` Phillip Wood
2025-09-22 13:01 ` Patrick Steinhardt
2025-09-22 14:07 ` Phillip Wood
2025-09-22 14:38 ` Patrick Steinhardt
2025-09-15 11:22 ` [PATCH v5 8/9] ci: convert "pedantic" job into full build with breaking changes Patrick Steinhardt
2025-09-15 11:22 ` [PATCH v5 9/9] ci: enable Rust for breaking-changes jobs Patrick Steinhardt
2025-09-15 17:12 ` [PATCH v5 0/9] Introduce Rust and announce that it will become mandatory Junio C Hamano
2025-09-16 2:03 ` Ezekiel Newren
2025-09-16 10:06 ` Patrick Steinhardt
2025-09-17 12:07 ` Sam James
2025-09-17 17:30 ` Ezekiel Newren
2025-09-16 22:25 ` Ramsay Jones
2025-09-16 23:38 ` Ezekiel Newren
2025-09-17 18:32 ` Ramsay Jones
2025-09-18 3:47 ` Elijah Newren
2025-09-25 1:10 ` what's missing from newer C? [was: [PATCH v5 0/9] Introduce Rust ....] Eric Wong
2025-09-26 22:17 ` Ezekiel Newren
2025-10-04 1:02 ` Eric Wong
2025-10-06 9:13 ` Pierre-Emmanuel Patry
2025-09-19 18:41 ` [PATCH RFC 0/3] Introduce Rust and announce that it will become mandatorty John Paul Adrian Glaubitz
2025-09-22 13:01 ` Patrick Steinhardt
2025-09-23 9:45 ` [PATCH v6 0/9] Introduce Rust and announce that it will become mandatory Patrick Steinhardt
2025-09-23 9:45 ` [PATCH v6 1/9] meson: add infrastructure to build internal Rust library Patrick Steinhardt
2025-09-23 9:45 ` [PATCH v6 2/9] Makefile: reorder sources after includes Patrick Steinhardt
2025-09-23 9:45 ` [PATCH v6 3/9] Makefile: introduce infrastructure to build internal Rust library Patrick Steinhardt
2025-09-23 9:45 ` [PATCH v6 4/9] help: report on whether or not Rust is enabled Patrick Steinhardt
2025-09-23 9:45 ` [PATCH v6 5/9] varint: use explicit width for integers Patrick Steinhardt
2025-09-23 9:45 ` [PATCH v6 6/9] varint: reimplement as test balloon for Rust Patrick Steinhardt
2025-09-23 9:45 ` [PATCH v6 7/9] BreakingChanges: announce Rust becoming mandatory Patrick Steinhardt
2025-09-23 15:29 ` Phillip Wood
2025-09-23 17:29 ` Junio C Hamano
2025-09-24 5:03 ` Patrick Steinhardt
2025-09-23 9:45 ` [PATCH v6 8/9] ci: convert "pedantic" job into full build with breaking changes Patrick Steinhardt
2025-09-23 9:45 ` [PATCH v6 9/9] ci: enable Rust for breaking-changes jobs Patrick Steinhardt
2025-09-23 20:15 ` [PATCH v6 0/9] Introduce Rust and announce that it will become mandatory Ezekiel Newren
2025-09-24 5:02 ` Patrick Steinhardt
2025-09-24 14:34 ` Ezekiel Newren
2025-09-25 6:30 ` [PATCH v7 " Patrick Steinhardt
2025-09-25 6:30 ` [PATCH v7 1/9] meson: add infrastructure to build internal Rust library Patrick Steinhardt
2025-09-25 6:30 ` [PATCH v7 2/9] Makefile: reorder sources after includes Patrick Steinhardt
2025-09-25 21:33 ` Ramsay Jones
2025-09-25 6:30 ` [PATCH v7 3/9] Makefile: introduce infrastructure to build internal Rust library Patrick Steinhardt
2025-09-25 6:30 ` [PATCH v7 4/9] help: report on whether or not Rust is enabled Patrick Steinhardt
2025-09-25 6:30 ` [PATCH v7 5/9] varint: use explicit width for integers Patrick Steinhardt
2025-09-30 13:34 ` Kristoffer Haugsbakk
2025-10-01 17:22 ` Ezekiel Newren
2025-10-02 7:30 ` Patrick Steinhardt
2025-09-25 6:30 ` [PATCH v7 6/9] varint: reimplement as test balloon for Rust Patrick Steinhardt
2025-10-01 17:21 ` Ezekiel Newren
2025-10-01 19:44 ` Junio C Hamano
2025-09-25 6:30 ` [PATCH v7 7/9] BreakingChanges: announce Rust becoming mandatory Patrick Steinhardt
2025-09-25 6:30 ` [PATCH v7 8/9] ci: convert "pedantic" job into full build with breaking changes Patrick Steinhardt
2025-09-25 6:30 ` [PATCH v7 9/9] ci: enable Rust for breaking-changes jobs Patrick Steinhardt
2025-09-25 16:35 ` [PATCH v7 0/9] Introduce Rust and announce that it will become mandatory Junio C Hamano
2025-10-01 18:43 ` Ezekiel Newren
2025-10-02 7:29 ` [PATCH v8 " Patrick Steinhardt
2025-10-02 7:29 ` [PATCH v8 1/9] meson: add infrastructure to build internal Rust library Patrick Steinhardt
2025-10-02 7:29 ` [PATCH v8 2/9] Makefile: reorder sources after includes Patrick Steinhardt
2025-10-02 7:29 ` [PATCH v8 3/9] Makefile: introduce infrastructure to build internal Rust library Patrick Steinhardt
2025-10-02 7:29 ` [PATCH v8 4/9] help: report on whether or not Rust is enabled Patrick Steinhardt
2025-10-02 7:29 ` [PATCH v8 5/9] varint: use explicit width for integers Patrick Steinhardt
2025-10-02 7:29 ` [PATCH v8 6/9] varint: reimplement as test balloon for Rust Patrick Steinhardt
2025-10-02 7:29 ` [PATCH v8 7/9] BreakingChanges: announce Rust becoming mandatory Patrick Steinhardt
2025-10-02 7:29 ` [PATCH v8 8/9] ci: convert "pedantic" job into full build with breaking changes Patrick Steinhardt
2025-10-02 7:29 ` [PATCH v8 9/9] ci: enable Rust for breaking-changes jobs Patrick Steinhardt
2025-10-02 16:38 ` [PATCH v8 0/9] Introduce Rust and announce that it will become mandatory Junio C Hamano
2025-10-07 9:59 ` Patrick Steinhardt
2025-10-02 23:35 ` Ezekiel Newren
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=61e4895a-415e-f2ba-97d7-23aa99334191@gmx.de \
--to=johannes.schindelin@gmx$(echo .)de \
--cc=ben.knoble@gmail$(echo .)com \
--cc=cb@256bit$(echo .)org \
--cc=collin.funk1@gmail$(echo .)com \
--cc=contact@hacktivis$(echo .)me \
--cc=eschwartz@gentoo$(echo .)org \
--cc=ezekielnewren@gmail$(echo .)com \
--cc=git@vger$(echo .)kernel.org \
--cc=gitster@pobox$(echo .)com \
--cc=me@ttaylorr$(echo .)com \
--cc=newren@gmail$(echo .)com \
--cc=phillip.wood123@gmail$(echo .)com \
--cc=pierre-emmanuel.patry@embecosm$(echo .)com \
--cc=ps@pks$(echo .)im \
--cc=sam@gentoo$(echo .)org \
--cc=sandals@crustytoothpaste$(echo .)net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox