I didn't immediately love this idea, but I'm not totally opposed to it either, and perhaps it makes things better rather than adding yet another very narrowly-focused tool. Also, pg_ctl already kinda has a somewhat similar facet with its "pg_ctl init" mode.
I support this idea, moving these scattered commands under pg_ctl will definitely help and bring maintenance commands in line with other ecosystems where it's normal to follow the template of "[ecosystem] [action] [arguments]". Examples: - docker run postgres - pip install h3 - apt install postgres - systemctl status postgresql - pg_ctl start
In this pattern stuff like vacuumdb, createuser, createlang, createdb, ... looks very off.
The same migration recently happened in imagemagick/graphicsmagick, where instead of the old "convert" binary there is now "gm convert" that better controls expectations (you won't attempt to convert to mp3 with it).