PNPM toolchains

import org.ysb33r.gradle.jse.pnpm.toolchains.JsePnpmToolchain

plugins {
  id 'org.ysb33r.jsecosystem.pnpm.base' version '5.0.0'
}

jsEcosystem {
  toolchains {
    pnpm(JsePnpmToolchain) {
        executableByVersion('1.2.3') (1)
        executableByPath('/path/to/pnpm') (2)
        executableBySearchPath() (3)

        withNodeToolchain('nodejs') (4)
        withNodeToolchain(toolchains.named('nodejs', JseNodeToolchain)) (5)
        withPnpmNode() (6)
        withPnpmNode('1.2.3') (7)
    }
  }
}
1 Use a specific version of pnpm.
2 Provide a hardcoded path to pnpm.
3 Look for pnpm in the system search path.
4 Associate a node toolchain called nodejs with this toolchain.
5 Associate a node toolchain using a provider.
6 Let pnpm manage its own version of node.
7 Let pnpm manage a specific version of node.

Using Linux GLIBC packages

If you are running pnpm on a GLIBC-based Linux and you see a message related to a missing libatomic.so, then you need to install the missing library with the specific Linux distribution’s package manager. See PNPM Linux Runtime Requirements.

Using Linux MUSL packages

As from v11, pnpm is available on Linux as a musl package. If you need those packages, set org.ysb33r.gradle.pnpm.use-musl=true as a Gradle or system property.