From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp10.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id uIujBP6UjmPlIgEAbAwnHQ (envelope-from ) for ; Tue, 06 Dec 2022 02:03:58 +0100 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp10.migadu.com with LMTPS id IJfHA/6UjmMOSwEAG6o9tA (envelope-from ) for ; Tue, 06 Dec 2022 02:03:58 +0100 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id CFE939F86 for ; Tue, 6 Dec 2022 02:03:56 +0100 (CET) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1p2MMm-0006mH-85; Mon, 05 Dec 2022 20:03:24 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1p2MMi-0006ly-AD for help-guix@gnu.org; Mon, 05 Dec 2022 20:03:23 -0500 Received: from out-201.mta0.migadu.com ([2001:41d0:1004:224b::c9]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1p2MMb-0005A6-D1 for help-guix@gnu.org; Mon, 05 Dec 2022 20:03:19 -0500 X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kyleam.com; s=key1; t=1670288588; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=b/DUtvSmYj+I92ZPAaNyvLIkMBX5nXw268o9I7ie2a8=; b=S4zzY6jpE6mO+fpABhAV4Cd+8XqRGq47ixkQ1qvmWh45PHa+VX+PcF+23UhxptxJShiPzT W0kJsgsqgNNR0Iumf/84cqiE5nbFq9Mmq6+XpgDhVTA//I07czkm2zCZmxaX2kJnVVkYzr gGaF+Hb/sibrFW+tkVe6sRiNDfXrANn9kr6nkpBwEYyxR3w5VCH94xQuTXdhC5glE1FQOy XMfd1ykp2PROcJV/20+p5jIh+1XWVxO4yo7bVGp+uBB1QIxq+DLDN3YSZ9IX/jtK4KDJnV 1wOhDRNVGEMPHIBt/cH/PK1n4AOLvlcWbMqTs1rqaR4ZDmFIwzIJFYydgwstHw== From: Kyle Meyer To: zimoun Cc: Mekeor Melire , help-guix Subject: Re: This is how you import a mailing list archives (e.g. guix-patches) into mu4e In-Reply-To: <864jua5jd6.fsf@gmail.com> References: <878rka8pcj.fsf@posteo.de> <864jua5jd6.fsf@gmail.com> Date: Mon, 05 Dec 2022 20:03:06 -0500 Message-ID: <87y1rlfinp.fsf@kyleam.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Received-SPF: pass client-ip=2001:41d0:1004:224b::c9; envelope-from=kyle@kyleam.com; helo=out-201.mta0.migadu.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: help-guix@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+larch=yhetil.org@gnu.org Sender: help-guix-bounces+larch=yhetil.org@gnu.org X-Migadu-Flow: FLOW_IN X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1670288637; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post:dkim-signature; bh=b/DUtvSmYj+I92ZPAaNyvLIkMBX5nXw268o9I7ie2a8=; b=SCoRdeNHghMay6UoWAzeMjVo2bBP0q9HQJRkmoGBcP9mSQTjlnuZ5xKGpxcw8otWbf3BHd OQ2y6xCyCT3/asRY8Y/gHPQJOpALdd0TemiLF5BJRfIMhz1d66UbYOiP1IOhBzyOH7wbAK 1KooDGK0PJInCIVsOYDFM6giebWdklreKCsZjEcDuxKzY/aKXTFpg7p2TYpzPJ4wirms0n DFHKFUWEy+pVo9LII807+n/Ac4ULJWoFHY9gMBy66XvVfLVlw/NvG3fQLDlCdenjXarJdm Ula32leMKoAfjSUun4wLDt4RbOMLxvZXzXxC2P5fbrdMpWsfFziqF2DEn2j5fQ== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1670288637; a=rsa-sha256; cv=none; b=QRiHXjiI/+e+50cuIXZz1NZqOhyb3oCTkhPO1czfbTdYloRMf2782xaat6KgVrhcftdvFF qXj455tphJXS2gS4FurwELnO2OmJ2HLA1yqZbKqydZvxs9pf+YWY5YCVxbRS8YaYrxdcpl x/mujm4dIsGTq8gd/fB05tRemxdcmywDA4XMbxmkAg58Jw9wqVs7X+TaydR4dWXMVBARZO 3kDwz558K5B8e87IfvymsxHy34zgFskadLu0E/RnFB/mieZ9fVkRDPqAO2o0OwVePPnYgy M1BESoOt4Z8Y7+s12pYeTnfpegSprBXWk+YcgLhZhWcrWrtL05njRM39JJZyrg== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=kyleam.com header.s=key1 header.b=S4zzY6jp; dmarc=none; spf=pass (aspmx1.migadu.com: domain of "help-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="help-guix-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: -7.27 Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=kyleam.com header.s=key1 header.b=S4zzY6jp; dmarc=none; spf=pass (aspmx1.migadu.com: domain of "help-guix-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="help-guix-bounces+larch=yhetil.org@gnu.org" X-Migadu-Queue-Id: CFE939F86 X-Spam-Score: -7.27 X-Migadu-Scanner: scn0.migadu.com X-TUID: 23ZtaAECz79i On 12/05/22 09:45:41 +0100, zimoun wrote: > Personally, I use =E2=80=9Cgit clone=E2=80=9D from a public-inbox instanc= e [1]. > > git clone --mirror https://yhetil.org/guix-patches/1 \ > guix-patches/git/1.git > > where =E2=80=991=E2=80=99 can be also replace by =E2=80=990=E2=80=99 for = the very old ones. In the case of guix-patches, there's not a 0.git. I started it at 1.git to leave open the possibility of adding 0.git with the messages I was missing from the beginning of the list's history (from Feb 12, 2017 to March 27, 2017). I'm not sure I'm ever going to do so at this point and, even if I did, reserving 0.git doesn't have much advantage over just adding the old messages on top of the existing epoch, so I probably should have just started it at 0.git. > Then the conversion from Git commit to maildir is done by a small script > [2], where all the job reads: > > --8<---------------cut here---------------start------------->8--- > # Extract the message from each commit in the range and store it > # in the Maildir for notmuch to consume. > $git rev-list $range | while read sha; do > # XXXX: fatal: path 'm' does not exist in > # and it can also raise issues with notmuch, as: > # Note: Ignoring non-mail file: $maildir/new/$sha A tree can either have m or d ("deleted" messages): https://public-inbox.org/public-inbox-v2-format.html So you should be able to avoid this error by skipping d's. > $git show $sha:m > $maildir/new/$sha > done > --8<---------------cut here---------------end--------------->8--- > > (Maybe better could be done and more robust are around.) No need to change what works, of course, but https://public-inbox.org/clients.html mentions l2md and impibe as tools for converting public-inbox archives to Maildir. * https://git.kernel.org/pub/scm/linux/kernel/git/dborkman/l2md.git * https://leahneukirchen.org/dotfiles/bin/impibe In terms of cloning archives, plain cloning and fetching with Git is fine, but, if you have public-inbox locally, you can instead use public-inbox-clone and public-inbox-fetch, which will handle some details for you (e.g, cloning underlying epochs and recognizing that new epochs have been added): $ public-inbox-clone https://yhetil.org/guix-patches Another option for fetching that's nice if you're mirror multiple repos is grokmirror: * https://git.kernel.org/pub/scm/utils/grokmirror/grokmirror.git/about/ * example setup for guix: https://yhetil.org/guix-patches/878scww903.fsf@k= yleam.com/ Both grokmirror and public-inbox-clone/fetch make use of the manifests that are published for public-inbox archives: $ curl -fSsL https://yhetil.org/manifest.js.gz | gzip -d | \ jq -r 'keys | .[] | select(contains("guix"))' /guix-bugs/git/0.git /guix-devel/git/0.git /guix-patches/git/1.git /guix-science/git/0.git /guix-user/git/0.git Then there's of course also public-inbox's lei (local email interface). I won't get into that, but, for anyone interested, here are messages where I've given some examples: * https://yhetil.org/emacs-devel/87wnh22w7o.fsf@kyleam.com * https://yhetil.org/guix-devel/87y1zcljq3.fsf@kyleam.com