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

Creating a debian package for a port, from a modified existing Debian package

Hey mentors,

I'm working on a Debian port to Cygwin called Debian GNU/kCygwin. I'm constantly taking an important Debian package like cdbs or graphviz from sid, then try to get it to build and work on Cygwin. For this, I have had to modify a lot of build instructions and some sources. Now, I have two questions:

1. When I modify source, I should bump the version number, i.e. add "cygwin1" at the end of the version set? And, am I right to assume that this all happens automatically when I add an entry to debian/changelog?

2. When I only modify build instructions (debian/rules or Makefile.in or so), should I also bump the version number? What about when these modifications do, or do not, change the actual working of the package compared to sid?

3. Should I put my (source and build) patches in debian/patches? If so, is there policy on the naming, e.g. 100_cygwin_buildfix or so? What if there is no debian/patches directory? (does this have something to do with quilt?)

When I have completed the porting of one package and succesfully built a .deb package, dpkg-buildpackage only creates a list of .deb files and possibly .changes. When I want to put these .debs in a public apt repository (I still have to succesfully port apt), licenses say I should also add the original source including all my patches.

4. Am I right to assume dpkg-buildpackage does not modify any other files than the .deb in the unpack directory? (that's one level above foopackage-1.2.3)

5. If the answer to (3) is to put patches in a specific location like debian/patches and NOT in the .diff.gz, how do I make sure the .diff.gz is created correctly; i.e. how do I bundle my patches complete from the unpacked build source on my PC to the public apt repository?

And the last question:
6. If I think my patches are worth it, I'm sending them to the Debian bug-tracking system. However, not all patches are accepted: for example, this one[1] was refused because the maintainer didn't want to worry about things this patch fixes (case insensitive file systems). In such cases, where IMO the maintainer is just too short-sighted to see beyond his own wishes, should I just drop the case, forget about sending the patch upstream and leave the situation as it is? I'm thinking other people can be helped, and the patch *is* available in the bug report, it's just not merged into the real package. I've mailed debian-devel about it, but nobody actually responded with an action I should take. What do you think? Just drop it?

Thanks a lot and sorry for the beast of an e-mail this has become,

[1] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=513073

Reply to: