Old Dog Learns New Trick

Middle aged server hacker and software packager reads manual pages, gets enlightened.

Old Dog Learns New Trick

So, as visitors might know, I've been packaging software for Red Hat / Fedora and variants for nigh on 14 years, I've been an EPEL contributor, I ran my own repo (long gone - lazy sysadmins with old repo configs stop hitting it please!).

rpmlint, rpmdevtools, Koji builders, pulp, you name it, I've probably used it.

But a very simple trick had evaded me until yesterday while trying to troubleshoot a postfix SPEC I'd been using (Postfix and Dovecot are two package I still roll myself, with a fail2ban package a WIP)

Some of my macros weren't being properly expanded on CentOS 8 and causing funky errors, and I had no idea why.

So after looking over logs / rpmlint etc - all the usual suspects, even looking over the system rpm macros file (and my own .rpmmacros which I'd not touched for years, to be honest)

Scratching my head to the point of near hair loss, I happened to recall the "rpmspec" command: as it turns out "rpmspec --parse postfix.spec" rendered the fully macro-expanded file to standard output, allowing me to find the missing macro definitions.

I didn't even have to Google.

To all the PFYs out there: man pages are your friend, even if using them seems quaint.

(Epilogue: as it turns out I was using the wrong specfile version, but hey I learned something anyway)