Note that upstream we no longer use the run-file based release out of licensing, closure size, and âbuildâ time considerations: Nixpkgs Reference Manual
Updating CUDA redistributables
<https://nixos.org/manual/nixpkgs/unstable/#updating-cuda-redistributables>
Go to NVIDIAâs index of CUDA redistributables:
https://developer.download.nvidia.com/compute/cuda/redist/
<https://developer.download.nvidia.com/compute/cuda/redist/>
In addition, if you use packages instead of buildInputs, you can skip the shellHook almost entirely.
⌠besides:
You also donât need to add alejandra, and its use should probably be discouraged, since NixOS upstreams now have an actual formatter. Using alejandra means going against ecosystem conventions.
Go ahead if youâve been using it, and switch to it if you really like its output better, but donât recommend it to new users by default, certainly not without that caveat.
Generally, when using mkShell you should never use buildInputs and just specify packages.
Under the hood, packages is translated to nativeBuildInputs, which will run for example the pkg-config hook which automatically configures the pkg-config environment variable - then you can remove that line from your shellHook because it will already be set correctly.
There likely are hooks for most of the other variables you set, but youâll have to try what can and cannot be removed, I donât know the hooks by heart