pkgsrc-Users archive

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

Re: Upstream Advice?



On Sat, Mar 22, 2025 at 04:10:52PM -0700, Chris Maness wrote:
 > I have uploaded two pkg programs on GitHub --  ham/tnt and ham/dpbox.
 > They sort of work on a modern NetBSD system, but need patching and
 > modernization.  I have begun this process, but also want this
 > reflected in a public place since I can't email the author with
 > patches for him to commit my changes to the upstream tarball.  

The things gdt said, but also:

There's an intermediate step between stuffing patches into pkgsrc and
becoming a new upstream, which is maintaining a patchkit. You can roll
then roll the patchkit into the pkgsrc package, it can be shared with
other packagers, and so forth.

This also lets you gather the patches logically (by topic) rather than
per-target-file like pkgsrc patches, and make more and deeper changes
than are reasonable to handle in the pkgsrc patch environment.

And it's a step on the way to becoming upstream if that's what you
want; basically the goal is to collect and maintain a patch set that
would be the first couple dozen maintenance commits on the way to a
next release.

I've done a few of these; one fairly straightforward example can be
found in games/finalbattle. The patchkits themselves can be found
here: https://www.netbsd.org/~dholland/patchkits/

(The motivation for these is usually that there's no upstream and the
volume of patches in pkgsrc has gotten out of hand, at which point
investigation finds a lot of simple basic maintenance to do.)

Anyway I would recommend rolling the current pkgsrc patches into your
changes rather than just starting on top of them. E.g. the "use
standard headers" patch in the finalbattle patchkit probably started
as a bunch of pkgsrc patches, and parts of the makefile patch were
probably originally in pkgsrc as well. (But I don't remember, it was
years ago.)

Maintaining patchkits with git is a bit annoying (git doesn't have any
functionality comparable to Mercurial patch queues) but it can be done
adequately with git rebase -i and whatever the patch series export
command is, which I forget offhand.

-- 
David A. Holland
dholland%netbsd.org@localhost


Home | Main Index | Thread Index | Old Index