[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Our policy around gbp.conf



Hope you're having nice holidays these days.

I was reading our team's wiki[0] again, with attention to one thing that I
always felt I didn't understand completely, and so I would like to discuss it
with you.

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.

A) pristine-tar = True
I think this is already the default, at least that's what I understood from
reading gbp.conf(5) and the file /etc/git-buildpackage/gbp.conf.
-- I finish reading the manpage and found out that the commented values are not
the default ones[2], so by running gbp config buildpackage I found out that
pristine-tar is False by default. So I guess this options should stay there.

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.

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])

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?

E) [import-orig] debian-branch = debian/master
Move this one to [DEFAULT], as suggestd in C)

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

E) [dch] multimaint-merge = True
I don't understand this option.

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?

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.

[0] https://wiki.debian.org/Teams/pkg-security
[1] https://wiki.debian.org/Teams/pkg-security#Git_packaging_tool_and_repository_layout
[2] I believe all the defaults should be set in /etc/git-buildpackage/gbp.conf instead
of in the code, I'll see what the gbp maintainers think of it.

--
Samuel Henrique <samueloph>

Reply to: