Re: Our policy around gbp.conf
Hi,
On Mon, 30 Dec 2019, Samuel Henrique wrote:
> In the section "Git packaging tool and repository layout", regarding the
> suggestion to use ~/.gbp.conf, I wish to propose us to have a default
> debian/gbp.conf in debian/master of all of our packages.
Yeah, we should do that.
> B) cleaner = /bin/true
> For not running dh_clean before the build, I believe this option is just a
> complexity saver because we run the build on "../build-area/", this means
> this
> option is not critical, but we want it.
Yeah, but we don't need it anymore apparently:
--git-cleaner=CLEAN_CMD
Use CLEAN_CMD to clean the source tree before the build. The
default is /bin/true (no cleaning).
> C) [buildpackage] ignore-branch = True
> I believe this option could be superseded by "[DEFAULT] debian-branch =
> debian/master" instead, so we can remove the two current ones we have (other
> one under [dch])
Yes.
> D) [import-orig] filter-pristine-tar = True
> I don't understand exactly what this does, found this description: "filter
> out files from tarball passed to pristine tar".
> What is this filtering? Can somebody give me an example?
It just means that we store in pristine-tar the tarball after it has been
filtered (and not before).
> E) [import-orig] debian-branch = debian/master
> Move this one to [DEFAULT], as suggestd in C)
Yes.
> D) [pq] patch-numbers = False
> I don't use pq yet, and I feel bad for that, but I don't know what this
> option does
By default the patches generated in debian/patches/ are named like the
output of "git format-patch", i.e. 0001-Foo.patch, 0002-Bar.patch, etc.
With this option the numbered prefix is dropped and avoids churns when you
reorder the patch series.
> E) [dch] multimaint-merge = True
> I don't understand this option.
When you generate the changelog, all entries for each maintainer are
grouped in a single block instead of having multiple blocks respecting
the timeline.
By default you have:
[ A ]
* Change 1
[ B ]
* Change 2
[ A ]
* Change 3
With this option you have:
[ A ]
* Change 1
* Change 3
[ B ]
* Change 2
It's really esthetical mainly (and saving a few lines).
> I believe we should agree on which options we want to have as the team' s
> default and have it on all of our packages (I can do the mass pushing), I
> assume we will all at least agree on the settings that are fundamental for
> the packaging to work, like the debian-branch and pristine-tar one, but we can
> also go a little further and agree on things like "export-dir", "sign-tags" and
> "cleaner".
>
> The first proposal that comes to mind for me, so we have a base to discuss,
> is the following:
> ----------------------------------------
> [DEFAULT]
> debian-branch = debian/master
> pristine-tar = True cleaner = /bin/true
>
> [buildpackage]
> sign-tags = True
> export-dir = ../build-area/
>
> [import-orig]
> filter-pristine-tar = True
>
> [pq]
> patch-numbers = False
>
> [dch]
> multimaint-merge = True
> ----------------------------------------
> What are your thoughts?
I would drop "cleaner", "export-dir" and keep the rest. export-dir is
still a matter of personal preference and might require other changes
(like DEBRELEASE_DEBS_DIR=../build-area) to fully benefit from it.
> On a side note, I think the option "debian-branch" could support having a
> variable for the current branch as its value, this way gbp.conf could be
> easily reusable in a debian/experimental or debian/whatever branch.
What do you mean?
I agree it's painful to have to update this file when you work in other
branches, hence why I use "ignore-branch" and tend to not hardcode the
branch in the configuration file..
Cheers,
--
⢀⣴⠾⠻⢶⣦⠀ Raphaël Hertzog <hertzog@debian.org>
⣾⠁⢠⠒⠀⣿⡁
⢿⡄⠘⠷⠚⠋ The Debian Handbook: https://debian-handbook.info/get/
⠈⠳⣄⠀⠀⠀⠀ Debian Long Term Support: https://deb.li/LTS
Reply to: