all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Kyle Meyer <kyle@kyleam.com>
To: Ricardo Wurmus <rekado@elephly.net>
Cc: Josselin Poiret <dev@jpoiret.xyz>,
	Hartmut Goebel <h.goebel@crazy-compilers.com>,
	Suhail <suhail@bayesians.ca>,
	guix-devel@gnu.org
Subject: Re: Guix Days: Patch flow discussion
Date: Wed, 07 Feb 2024 21:39:35 -0500	[thread overview]
Message-ID: <87y1bv1xy0.fsf@kyleam.com> (raw)
In-Reply-To: <87bk8s58p1.fsf@elephly.net>

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.fsf@kyleam.com

piem currently has some basic support for lei, focused on searching
public-inbox instances and displaying the results in Emacs.


  reply	other threads:[~2024-02-08  2:40 UTC|newest]

Thread overview: 92+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-02-06 20:00 Guix Days: Patch flow discussion Suhail
2024-02-07 13:41 ` Josselin Poiret
2024-02-07 13:46   ` Josselin Poiret
2024-02-11 17:24     ` Vagrant Cascadian
2024-02-22  5:42       ` Felix Lechner via Development of GNU Guix and the GNU System distribution.
2024-02-11 20:04     ` Felix Lechner via Development of GNU Guix and the GNU System distribution.
2024-02-11 20:21       ` Clément Lassieur
2024-02-11 20:39         ` Felix Lechner via Development of GNU Guix and the GNU System distribution.
2024-02-11 22:08           ` Clément Lassieur
2024-02-12 10:35       ` Josselin Poiret
2024-02-12 11:19         ` Clément Lassieur
2024-02-12 15:57         ` Felix Lechner via Development of GNU Guix and the GNU System distribution.
2024-02-13  9:31           ` Josselin Poiret
2024-02-13 14:30             ` Felix Lechner via Development of GNU Guix and the GNU System distribution.
2024-02-14  9:21               ` Josselin Poiret
2024-02-07 14:30   ` Clément Lassieur
2024-02-07 20:18   ` Ricardo Wurmus
2024-02-08  2:39     ` Kyle Meyer [this message]
2024-02-11 16:38       ` Maxim Cournoyer
2024-02-14 15:48         ` Simon Tournier
2024-02-15 11:07           ` Josselin Poiret
2024-02-15 12:45             ` Simon Tournier
2024-02-15 11:45           ` Clément Lassieur
2024-02-15 11:51             ` Clément Lassieur
2024-02-15 15:32               ` Felix Lechner via Development of GNU Guix and the GNU System distribution.
2024-02-15 17:19                 ` Simon Tournier
2024-02-16 14:27               ` Maxim Cournoyer
2024-02-15 13:06             ` Simon Tournier
2024-02-15 17:24               ` Clément Lassieur
2024-02-15 18:40                 ` Simon Tournier
2024-02-15 22:08                   ` Clément Lassieur
2024-03-01 22:04                   ` Attila Lendvai
2024-02-16 14:25           ` Maxim Cournoyer
  -- strict thread matches above, loose matches on Subject: below --
2024-02-18  2:31 Suhail
     [not found] <35786.5440238797$1707248619@news.gmane.org>
2024-02-16 10:56 ` Clément Lassieur
2024-02-16 11:03   ` Andreas Enge
2024-02-16 11:28     ` Clément Lassieur
2024-02-16 12:06       ` Christopher Baines
2024-02-06 21:01 Suhail
2024-02-06 19:47 Suhail
2024-02-06 19:42 Suhail
2024-02-05 21:45 Suhail
     [not found] <65c12e7e.0c0a0220.d7729.823cSMTPIN_ADDED_BROKEN@mx.google.com>
2024-02-05 19:52 ` Felix Lechner via
2024-02-05 19:33 Andy Tai
2024-02-05 20:50 ` Clément Lassieur
2024-02-06  7:58   ` Andy Tai
2024-02-05 18:51 Suhail
2024-02-06 16:51 ` Steve George
2024-02-05 18:44 Suhail
2024-02-05 19:59 ` Hartmut Goebel
2024-02-06 11:14   ` Josselin Poiret
     [not found] <34679.2393991322$1707153777@news.gmane.org>
2024-02-05 17:36 ` Clément Lassieur
2024-02-05 17:21 Suhail
2024-02-05 17:25 ` Vivien Kraus
2024-02-06 11:27 ` Josselin Poiret
2024-02-05  9:39 Steve George
2024-02-05 14:07 ` Leo Famulari
2024-02-05 15:00   ` Tomas Volf
2024-02-05 22:08     ` Wilko Meyer
2024-02-06 11:49       ` Tomas Volf
2024-02-06 12:09         ` Clément Lassieur
2024-02-06 12:53           ` Tomas Volf
2024-02-05 21:57   ` Steve George
2024-02-05 15:57 ` Clément Lassieur
2024-02-05 17:10   ` Felix Lechner via Development of GNU Guix and the GNU System distribution.
2024-02-05 17:28     ` Clément Lassieur
2024-02-05 18:27       ` Felix Lechner via
2024-02-05 18:50         ` Clément Lassieur
2024-02-05 22:10   ` Steve George
2024-02-05 18:07 ` Hartmut Goebel
2024-02-05 22:29   ` Steve George
2024-02-05 22:31   ` Steve George
2024-02-05 22:31   ` Steve George
2024-02-05 22:31   ` Steve George
2024-02-05 22:31   ` Steve George
2024-02-05 22:31   ` Steve George
2024-02-05 22:31   ` Steve George
2024-02-05 22:32   ` Steve George
2024-02-05 22:32   ` Steve George
2024-02-05 22:33   ` Steve George
2024-02-05 22:50   ` Steve George
2024-02-06 13:27 ` Edouard Klein
2024-02-06 13:39   ` Steve George
2024-02-08 19:56     ` Skyler Ferris
2024-02-09 16:35       ` Edouard Klein
2024-02-09 16:46         ` Andreas Enge
2024-02-11 10:03         ` Steve George
2024-02-14 21:40 ` Simon Tournier
2024-02-28 17:51   ` Giovanni Biscuolo
2024-02-28 19:21     ` Matt
2024-02-29 15:41       ` Daniel Littlewood
2024-02-29 18:09         ` Andreas Enge

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=87y1bv1xy0.fsf@kyleam.com \
    --to=kyle@kyleam.com \
    --cc=dev@jpoiret.xyz \
    --cc=guix-devel@gnu.org \
    --cc=h.goebel@crazy-compilers.com \
    --cc=rekado@elephly.net \
    --cc=suhail@bayesians.ca \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.