Hi Ricardo, Ricardo Wurmus writes:
> Hi Josselin, >> They both can co-exist with debbugs, and for now the patchwork instance >> of QA is not usable for status tracking (because it is not meant to be >> used as such for now). One can already use both of them, but using both >> supercedes debbugs, and gets rid of its limitations. I've been using >> b4/lei with the yhetil public-inbox instance, with piem.el as an >> interface, and it's really useful. With a properly configured b4, one >> could simply run `b4 shazam some-msg-id` and it would automatically >> apply the corresponding patchset. > > I’m interested in adopting this workflow. Where can I find more > information on how to configure this? In 889a6204f8 (doc: Add some guidelines for reviewing, 2023-11-07), Maxim added some b4 configuration to Guix's etc/git/gitconfig that points at yhetil.org. With that setup, running 'b4 shazam MESSAGE-ID' from a Guix checkout should work. You may have just be asking about configuring 'b4 shazam', but if you (or others) are interested in configuring piem, read on :) piem setup and use ================== For piem, you need some custom setup in your Emacs config. https://docs.kyleam.com/piem/Registering-inboxes.html piem-inboxes contains entries that provide info to help piem map from a message (say in Notmuch or Gnus) to a public-inbox URL and to a local checkout of the repo. (setq piem-inboxes '(("guix" :coderepo "/path/to/your/clone/of/guix/" :url "https://yhetil.org/guix/" :listid "bug-guix.gnu.org"))) Further setup depends on how (in Emacs) you read your messages. https://docs.kyleam.com/piem/Enabling-integration-libraries.html For example, a Notmuch user would enable piem-notmuch-mode: (piem-notmuch-mode 1) Or a debbugs.el user would enable piem-debbugs-mode (contributed by Jelle Licht). You can enable more than one integration library. Once that's set up, the main entry point to b4 is the piem-b4-am transient. That transient in turn has the main command of interest, piem-b4-am-from-mid. https://docs.kyleam.com/piem/Using-b4-to-apply-patches.html Calling piem-b4-am-from-mid from, say, a Notmuch message with a patch series will prepare the "am-ready" series, prompt you for the name of a branch to create, and apply the series with 'git am' to the configured repo. piem-b4-am-from-mid vs b4 shazam ================================ piem-b4-am-from-mid (from Emacs) and 'b4 shazam' (from the shell visiting Guix repo) are similar in spirit: use 'b4 am' to prepare an am-ready mbox from a thread's full mbox and then use 'git am' apply it to a repo. A key difference is that, with piem, you start off in some non-repository Emacs buffer containing a message and then piem knows how to get to the repository (using the config above). As a side note: 'b4 shazam' didn't exist when I wrote piem's b4 integration. At some point, I plan to add 'b4 shazam' support to piem, similar to how there is a piem command (piem-b4-am-ready-from-mid) that's a direct interface to 'b4 am', without the extra handling of piem-b4-am-from-mid. This will allow callers that prefer to use shazam invoke it from Emacs rather than the command line. lei === There's also mention upthread of lei. I don't think you're asking about configuring that, but fwiw that's public-inbox's local command-line client. I gave a short (and incomplete) description of it here: https://yhetil.org/guix-devel/87a6izsoio....@kyleam.com piem currently has some basic support for lei, focused on searching public-inbox instances and displaying the results in Emacs.