😽
nixでyarn(corepack)
nixでinstallしたnodejsを使おうとするとcorepack enable
で失敗した。
$ corepack enable
Internal Error: EACCES: permission denied, symlink '../lib/node_modules/corepack/dist/pnpm.js' -> '/nix/store/dy8pai2l7g6rjrlsh9jp68lzbw0z846k-nodejs-18.9.1/bin/pnpm'
Error: EACCES: permission denied, symlink '../lib/node_modules/corepack/dist/pnpm.js' -> '/nix/store/dy8pai2l7g6rjrlsh9jp68lzbw0z846k-nodejs-18.9.1/bin/pnpm'
以下を参考にshell.nix
に書いて、yarnを利用可能にしてみた。
{ pkgs ? import <nixpkgs> {} }:
let
corepack = pkgs.stdenv.mkDerivation {
name = "corepack";
buildInputs = [ pkgs.nodejs-18_x ];
phases = [ "installPhase" ];
installPhase = ''
mkdir -p $out/bin
corepack enable --install-directory=$out/bin
'';
};
in pkgs.mkShell {
packages = [
corepack
];
}
Discussion