kpdyer / fteproxy

programmable proxy for censorship circumvention
https://fteproxy.org/
Apache License 2.0
149 stars 21 forks source link

drop the debian directory to separate upstream and packaging code #138

Closed leggewie closed 10 years ago

leggewie commented 10 years ago

the debian directory should live in a separate branch in my opinion, I'll make another pull request for that. I suggest to name the branch debian/sid

kpdyer commented 10 years ago

So, just to be clear: will the debian/sid branch have packaging code only? Does it make sense to live in another repo, maybe?

This repo does most of the fteproxy packaging: https://github.com/kpdyer/fteproxy-builder. Maybe it makes sense to move the debian directory there?

leggewie commented 10 years ago

You are of course free to do it any way you like it. Personally, I only deviate from what I see as standard practice if I know what I'm doing which most of the time I don't ;-)

While not everyone uses git-buildpackage (hey, many packagers don't even use git) I've found it was the most actively developed and in FOSS it is usually a good idea to follow the leader in that respect. gbp assumes a layout where the branch called upstream contains only the upstream code, pristine-tar contains small delta files to regenerate the md5sum-identical tarballs from the git repo itself (this branch is never merged) and then there is master to which upstream is merged from time to time. The debian packaging happens here. Master is thus upstream + the debian directory. Ideally, a diff between master and upstream branches should list only files in the debian directory (patches to upstream code go to debian/patches/ and are applied at build-time).

Obviously, that format is not so ideal when upstream does the actual development in git, too, as is the case with fteproxy. That's where I said, I'll have a learning curve as well. Since you do publish tarballs, I am now of the opinion it would be better to simply have one repo for upstream work and then another one with above three branches for the packaging.

The fteproxy-builder repo that you referred to could hold these three branches if you want. But as I mentioned above the packaging branch should be upstream branch + debian/ directory only. That's easy enough to achieve by having separate branches. Another option is to have things hosted on git.debian.org, but you'd need to apply for an account, so maybe it's easiest to stay on github.

Since you already use master in the fteproxy-builder repo for something else, you might consider having the three branches in there but named pristine-tar, upstream and debian. gbp usually assumes upstream+"debian/*" to be in master but this can overridden. Naming that branch debian seems to be the best choice.

leggewie commented 10 years ago

To this effect, can you please release a new tarball just now that does not ship a debian directory? I'll import that with the required tools and set up the repository as described above and you can then pull the branches to a location you like so that we can collaborate.