On 11/30/23 17:25, Pat Maddox wrote:
According to portscout, there are three individual maintainers who each 
maintain 1000+ ports: https://portscout.freebsd.org/index-total.html

I'm trying to wrap my head around how someone could do that. They have to use 
some utils to pull that off. Are those tools publicly available, either as 
packages, or scripts in a repo somewhere?

I am gradually developing a bit of tooling to maintain my own collection of ports: 
https://patmaddox.com/dir?ci=3d33b5b2dd2ebe39&name=ports/maintain  Perhaps one 
day it will evolve to a point where it's generally useful and shareable.

In the mean time, I would love to know how people are efficiently maintaining 
multiple ports: particularly those folks maintaining 1000+. Maybe I can just do 
what they do instead of re-constructing this myself.

Its normally easier to maintain a port than it is to do the initial porting though some ports have updates with difficulties that need much more time. Many updates come through as little more effort than a version bump and distinfo update. I know there are tools to watch for updates from upstream and those tools are also ran by the FreeBSD project in a more generic form to try to automatically tell port maintainers about a port being out of date. Not every port gets frequent updates and not all updates come through at the same time. Some updates come form interested users and the maintainer just gave their approval instead of having to do the update from scratch on their own.

Some of the ports do not get as much attention as a result and I assume some are just picked up as a 'I have a port that needs this dependency that is abandoned; I'll take up being the source of contact for issues and updates'. I suspect that accelerates the updates instead of waiting on communication with another maintainer to lead to organizing an update. A port maintainer maintaining dependencies or many ports may not always be paying as close of attention as a porter focused on a small quantity, but they also may be infrequent users who just wanted to help keep a port alive. Sometimes I have also seen corners cut like, "install this directory and note its contents into the pkg" instead of creating a detailed pkg-plist in the ports tree. Thought that was generally frowned upon but it seems parts of the ports tree are designed for such a feature. Though updates can be quite simple, doing the least possible sometimes leads to ports having extra unnecessary dependencies and other outdated aspects that can be better with it being revised.

I fall in the category of feeling like my lack of skill makes full maintainership and porting seem unwise as I fear I'd refer updates and issues to someone else's hands anyways. If I locate issues, I try to share those, preferably with a patch when I can. Updates have resulted from me asking a maintainer of a status of a port they didn't notice an update for and on occasion issues with PRs that maintainers didn't have an answer for but wanted fixed got resolved because of details I shared so yes the maintainers don't always do everything alone.

I'd love to see and learn the workflow of other porters and developers myself instead of just fumbling around with trying to implement the handbook's teachings, .Mk file information, and what else I learn from browsing ports. If you get any private responses with detail, hopefully it wasn't private intentionally and can be shared publicly. Hopefully more knowledge can lead to more maintainers, better quality, and faster updates.

Pat



Reply via email to