Subject: Re: [PATCH 0/2] extra: new concept of extra components

From: Felipe Contreras <[email-masked]>
Date: Wed, 16 Jun 2021 15:48:58 -0500

Junio C Hamano wrote:
> Ævar Arnfjörð Bjarmason <[email-masked]> writes:
> 
> > On Sun, Jun 13 2021, Felipe Contreras wrote:
> >
> >> This patch series introduces the concept of extra components. These are
> >> components which are not yet part of the core but are good enough for
> >> distributions to ship, and in fact, they already do.
> >
> > I like this direction.
> 
> I do not mind change, but it is fuzzy to me what direction you are
> in favor of.  Is the gist of the idea to split what is in contrib/
> into two bins, ones that are closer to "official" and others?  If
> so, I see sort-of merit in such a distinction, but whom is this
> trying to help?

Everyone.

  1. People who download the source code and want to install git in a
     similar way to how distributions do it
  2. Developers who have no idea what's good in contrib/
  3. Distribution packagers who want to know what's good enough to be
     distributed, and don't want to manually copy files (i.e. all
     distribution packagers)

> Distros would rather see what they use unmoved, and would not care
> where those that they do not use move to, I would imagine.

That is not true.

Distributions do not want to decide where to place
`contrib/completion/git-prompt.sh`, they want the git project to decide.

Obviously it has to be under '/usr/share/', preferably
'/usr/share/$project' (i.e. not /usr/share/git-core), but other than
that they do not care.

> So I suspect that it would help them more if we kept the ones that are
> closer to "official" in contrib/ and moved the rest to a new
> hierarchy?

Sure, that would help, but they still would want an install-contrib target.

A distribution packager that is maintaining 20 packages (or more)
doesn't want to keep track where every single file of her every
single package goes. She just wants to do `make install` and be done
with it. Any package that requires to manually copy some files to the
destination is simply a hassle to maintain.

-- 
Felipe Contreras