Re: TOOLS_PLATFORM.bash required version
Greg Troxel <[email protected]> Wed, 01 Jul 2026 07:54:17 -0400
| Newsgroups | gmane.os.netbsd.devel.packages |
|---|---|
| Message-ID | <[email protected]> |
Jonathan Perkin <[email protected]> writes: > * On 2026-06-30 at 23:18 BST, Greg Troxel wrote: > >>I have proposed that TOOLS_PLATFORM.bash must be >= 5. That means >>systems with bash 4 can't set it, and bash will be built from pkgsrc on >>those platforms. A little cpu time, and taking lots of potential >>trouble off the table. >> >>So: >> >> Do you know of any actual systems that have a builtin bash that is 4? >> (Yesterday, macOS had builtin bash 3, and today it has no builtin >> bash.) > > We still ship 4.3.30 on SmartOS. Given the massive potential for > breakage as it's used by all scripts in our product, as well as the > primary shell for pkgsrc so used for everything there too, we've > always been wary of upgrading unless absolutely required. Surprising news to me and good you spoke up. (It's hard to believe bash 4 is maintained from a vulnerability or bugfix viewpoint, and by 2029 you'll be 10 years behind -- but that's not about pkgsrc.) I therefore amend my previous proposal to say: Evidence from SmartOS (which uses bash 4) is that pkgsrc use of bash4 TOOLS_PLATFORM.bash does not cause problems. I propose to document that TOOLS_PLATFORM.bash must be >= 4. Index: defaults.mk =================================================================== RCS file: /cvsroot/pkgsrc/mk/tools/defaults.mk,v retrieving revision 1.66 diff -u -p -r1.66 defaults.mk --- defaults.mk 3 Jul 2024 13:27:16 -0000 1.66 +++ defaults.mk 1 Jul 2026 11:52:07 -0000 @@ -53,6 +53,7 @@ TOOLS_DEFAULTS_MK= defined _TOOLS_VARNAME.awk= AWK _TOOLS_VARNAME.basename= BASENAME +# TOOLS_PLATFORM.bash must be >= 4.0. _TOOLS_VARNAME.bash= BASH _TOOLS_VARNAME.bison-yacc= YACC _TOOLS_VARNAME.byacc= YACC and I'm going to go ahead and commit it.