Currently, corepack sits behind node_install_npm in node/tools/install.py
if 'true' == variables.get('node_install_npm'):
npm_files(action)
corepack_files(action)
'node_install_npmis in turn set bynode/configure.py`
parser.add_argument('--without-npm',
action='store_true',
dest='without_npm',
default=None,
help='do not install the bundled npm (package manager)')
...
o['variables']['node_install_npm'] = b(not options.without_npm)
This has the side-effect that when node is built w/o npm (configure.py --without-npm), then corepack is deselected as well. Ideally, corepack should sit behind its own configure flag (configure.py --without-corepack) instead.