user/dev discussion of public-inbox itself
 help / color / Atom feed
From: Konstantin Ryabitsev <konstantin@linuxfoundation.org>
To: meta@public-inbox.org
Subject: Minimalist public-inbox feed: sendmail-pi-feed
Date: Tue, 21 Jan 2020 17:29:24 -0500
Message-ID: <20200121222924.ioz5ve2sg65zcuoy@chatter.i7.local> (raw)

Hi, all:

I was trying to create a "simplest possible" way to maintain a 
public-inbox developer feed, and this is the end-result:

https://git.kernel.org/pub/scm/linux/kernel/git/mricon/korg-helpers.git/tree/sendmail-pi-feed

It's written to be used with git-send-email, but can, theoretically, be 
used with any tool that accepts custom sendmail command paths (e.g.  
mutt) -- though if used in that capacity, it needs more features to make 
sure that private mail is not added to the feed. For example, there can 
be an "allowlist" of addresses to match against "to" or "cc".

At the moment, this is more of a proof of concept and I wanted to share 
it with you all for early comments. The main goal was to avoid 
introducing too many dependencies, such as perl and its many cpan 
modules, while producing valid public-inbox feeds -- so this script is 
literally 50 lines of bash. :)

From the readme section:

----
Simplest configuration is to set the following in your git config file,
either per repository, or globally in ~/.gitconfig if you want
a single developer feed for all your work.

[sendemail]
  smtpserver = /path/to/bin/sendmail-pi-feed

[sendemail "sendmail-pi-feed"]
  # the directory where to put the feed (will be created with --init)
  inboxdir = /path/to/toplevel/public-inbox-dir
  # if not set, the epoch will be 0, which is strongly suggested;
  # if you increment it for some reason, make sure you don't skip 
  # numbers
  epoch = 0
  # if defined, will pipe stdin to this command as well, in case
  # you want to actually send out the patches in addition to writing 
  # them to the public-inbox feed; leave undefined otherwise
  sendmail = /usr/sbin/sendmail

Once this is done, run "sendmail-pi-feed --init" to create the feed.
During the init process, you will be asked whether you would like to
PGP-sign the commits, which is strongly recommended if you already
have PGP-signing set up on your system.

After the --init is complete, you can use "git send-email" as you
normally would and all patches will be automatically added to the
feed. You can then publish the feed on any git hosting service by
setting a remote and performing a git push.

If you would like to auto-push the feed, you can add an appropriate
post-commit hook.
----

Thoughts?

-K

             reply index

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-21 22:29 Konstantin Ryabitsev [this message]
2020-01-23 23:02 ` Eric Wong

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

  List information: https://public-inbox.org/README

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200121222924.ioz5ve2sg65zcuoy@chatter.i7.local \
    --to=konstantin@linuxfoundation.org \
    --cc=meta@public-inbox.org \
    /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

user/dev discussion of public-inbox itself

Archives are clonable:
	git clone --mirror https://public-inbox.org/meta
	git clone --mirror http://czquwvybam4bgbro.onion/meta
	git clone --mirror http://hjrcffqmbrq6wope.onion/meta
	git clone --mirror http://ou63pmih66umazou.onion/meta

Example config snippet for mirrors

Newsgroups are available over NNTP:
	nntp://news.public-inbox.org/inbox.comp.mail.public-inbox.meta
	nntp://ou63pmih66umazou.onion/inbox.comp.mail.public-inbox.meta
	nntp://czquwvybam4bgbro.onion/inbox.comp.mail.public-inbox.meta
	nntp://hjrcffqmbrq6wope.onion/inbox.comp.mail.public-inbox.meta
	nntp://news.gmane.io/gmane.mail.public-inbox.general

 note: .onion URLs require Tor: https://www.torproject.org/

AGPL code for this site: git clone https://public-inbox.org/public-inbox.git