yarn setup fails when using Node version lower than 20.11.0
### Node Version

18.20.6

### NPM/Yarn/PNPM Version

10.8.2

### Strapi Version

5.9.0

### Operating System

MacOS

### Database

SQLite

### Javascript or Typescript

Typescript

### Reproduction URL

_No response_

### Bug Description

Hello,

I wanted to set up the Strapi repo locally, but when I run `yarn setup` I faced these errors

```
[!] TypeError: The "paths[0]" argument must be of type string. Received undefined
          at new NodeError (node:internal/errors:406:5)
          at validateString (node:internal/validators:162:11)
          at Object.resolve (node:path:1101:7)
          at baseConfig (file:///xxx/xxx/strapi/rollup.utils.mjs:44:23)
          at file:///xxx/xxx/strapi/packages/core/utils/rollup.config.mjs:3:16
          at ModuleJob.run (node:internal/modules/esm/module_job:217:25)
          at ModuleLoader.import (node:internal/modules/esm/loader:316:24)
          at importModuleDynamicallyWrapper (node:internal/vm/module:431:15)
          at getConfigFileExport (/xxx/xxx/strapi/node_modules/rollup/dist/shared/loadConfigFile.js:471:17)
          at Object.loadConfigFile (/xxx/xxx/strapi/node_modules/rollup/dist/shared/loadConfigFile.js:430:59)
```

### Steps to Reproduce

1. Use a Node version less than 20.11.0
2. Run `yarn setup`

### Expected Behavior

No errors should be displayed and the `yarn setup` command should complete successfully.

### Logs

```shell
[!] TypeError: The "paths[0]" argument must be of type string. Received undefined
          at new NodeError (node:internal/errors:406:5)
          at validateString (node:internal/validators:162:11)
          at Object.resolve (node:path:1101:7)
          at baseConfig (file:///xxx/xxx/strapi/rollup.utils.mjs:44:23)
          at file:///xxx/xxx/strapi/packages/core/utils/rollup.config.mjs:3:16
          at ModuleJob.run (node:internal/modules/esm/module_job:217:25)
          at ModuleLoader.import (node:internal/modules/esm/loader:316:24)
          at importModuleDynamicallyWrapper (node:internal/vm/module:431:15)
          at getConfigFileExport (/xxx/xxx/strapi/node_modules/rollup/dist/shared/loadConfigFile.js:471:17)
          at Object.loadConfigFile (/xxx/xxx/strapi/node_modules/rollup/dist/shared/loadConfigFile.js:430:59)
```

### Code Snippets

_No response_

### Media

_No response_

### Additional information

Upon investigating the issue, I discovered that the cause of it is the usage of `import.meta.dirname`. `import.meta.dirname` was introduced in [Node version v20.11.0](https://nodejs.org/en/blog/release/v20.11.0), so if you use a lower version than that one it will return `undefined`.

My suggestion to fix this would be to change the min version of Node in [.nvmrc](https://github.com/strapi/strapi/blob/main/.nvmrc):

```diff
- 20
+ 20.11
```

And to also change the min version inside of the [package.json engines filed](https://github.com/strapi/strapi/blob/main/package.json#L163):

```diff
  "engines": {
-    "node": ">=18.0.0 <=22.x.x",
+    "node": ">=20.11.x <=22.x.x",
    "npm": ">=6.0.0"
  },
```

What do you think?

If you want me to make these changes, I can make a PR.

### Confirmation Checklist

- [x] I have checked the existing [issues](https://github.com/strapi/strapi/issues) for duplicates.
- [x] I agree to follow this project's [Code of Conduct](https://github.com/strapi/strapi/blob/develop/CODE_OF_CONDUCT.md).