Building Nvidia Vulkan Samples, Shaderc not found

Hello.

After much hair pulling I am failing to get the nvidia vulkan samples at GitHub - nvpro-samples/vk_mini_samples: Collection of Vulkan samples to build with the following nix-shell description

with import <nixpkgs> {};
stdenv.mkDerivation rec {
        name = "Vulkan-Samples";
        buildInputs = [
                pkgs.cmake
                pkgs.gcc
                pkgs.mesa
                pkgs.vulkan-headers
                pkgs.vulkan-loader
                pkgs.vulkan-tools
                pkgs.vulkan-validation-layers
                pkgs.shaderc
                pkgs.shaderc.dev
                pkgs.shaderc.lib
                #pkgs.glslang
                pkgs.glfw
                pkgs.glm
                pkgs.libGLU
                pkgs.python3
                pkgs.xorg.libX11
                pkgs.xorg.libXcursor
                pkgs.xorg.libXrandr
                pkgs.xorg.libXinerama
                pkgs.xorg.libXi
                pkgs.xorg.libXext
                pkgs.xorg.libXrender
                pkgs.xorg.libXxf86vm
                pkgs.xorg.libXdmcp
                pkgs.xorg.libXau
                pkgs.xorg.libxcb
                pkgs.gnutls
                pkgs.xorg.libpthreadstubs
                pkgs.llvm_15
                pkgs.clang_15
                pkgs.pkg-config
        ];
        
        LD_LIBRARY_PATH="${pkgs.vulkan-loader}/lib:${pkgs.shaderc.lib}/lib:${pkgs.shaderc.dev}/lib";
        VULKAN_LIB_DIR="${pkgs.shaderc.dev}/lib";
        shellHook = "echo ${pkgs.vulkan-loader}";
}

The Nvidia provided cmake files to find the vulkan sdk components at nvpro_core/FindVulkanSDK.cmake at 415a5648bb2c16a887efff9d091efc5e44bc0598 · nvpro-samples/nvpro_core · GitHub returns the following error.

[nix-shell:~/code/nvpro_samples/vk_mini_samples/build]$ cmake ..
-- The C compiler identification is GNU 11.3.0
-- The CXX compiler identification is GNU 11.3.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /nix/store/a12yx0i0xh7i39bahq13jhmfplmn69ar-gcc-wrapper-11.3.0/bin/gcc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /nix/store/a12yx0i0xh7i39bahq13jhmfplmn69ar-gcc-wrapper-11.3.0/bin/g++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- BASE_DIRECTORY = /home/luluco/code/nvpro_samples
-- CMAKE_CURRENT_SOURCE_DIR = /home/luluco/code/nvpro_samples/vk_mini_samples
-- VulkanSDK search paths: 
-- VULKAN_SDK environment variable: 
-- Vulkan Include: /nix/store/ly630b9rwlk7ri2dga2bgfw5liapkqbs-vulkan-headers-1.3.231.0/include
-- Vulkan Library: /nix/store/fca7jbd3iys881z7fqhbz3wrws2ikf3j-vulkan-loader-1.3.231.0/lib/libvulkan.so
-- VULKANSDK_ROOT_DIR = /nix/store/ly630b9rwlk7ri2dga2bgfw5liapkqbs-vulkan-headers-1.3.231.0/include
CMake Error at /nix/store/0257lz452871n4sp11afxfhm1g94dj4b-cmake-3.24.3/share/cmake-3.24/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
  Could NOT find VulkanSDK (missing: VULKANSDK_SHADERC_LIB)
Call Stack (most recent call first):
  /nix/store/0257lz452871n4sp11afxfhm1g94dj4b-cmake-3.24.3/share/cmake-3.24/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE)
  /home/luluco/code/nvpro_samples/nvpro_core/cmake/find/FindVulkanSDK.cmake:176 (find_package_handle_standard_args)
  /home/luluco/code/nvpro_samples/nvpro_core/cmake/setup.cmake:374 (find_package)
  CMakeLists.txt:39 (_add_package_VulkanSDK)

I am not sure what to do now…

UPDATE: Fixed it, I needed one or both of the bin and static output derivations from pkgs.shaderc to make it work. here is the final default.nix im using:

with import <nixpkgs> {};
stdenv.mkDerivation rec {
        name = "Vulkan-Samples";
        buildInputs = [
                pkgs.cmake
                pkgs.gcc
                pkgs.mesa
                pkgs.vulkan-headers
                pkgs.vulkan-loader
                pkgs.vulkan-tools
                pkgs.vulkan-validation-layers
                pkgs.shaderc
                pkgs.shaderc.bin
                pkgs.shaderc.static
                pkgs.shaderc.dev
                pkgs.shaderc.lib
                #pkgs.glslang
                pkgs.glfw
                pkgs.glm
                pkgs.libGLU
                pkgs.python3
                pkgs.xorg.libX11
                pkgs.xorg.libXcursor
                pkgs.xorg.libXrandr
                pkgs.xorg.libXinerama
                pkgs.xorg.libXi
                pkgs.xorg.libXext
                pkgs.xorg.libXrender
                pkgs.xorg.libXxf86vm
                pkgs.xorg.libXdmcp
                pkgs.xorg.libXau
                pkgs.xorg.libxcb
                pkgs.gnutls
                pkgs.xorg.libpthreadstubs
                pkgs.llvm_15
                pkgs.clang_15
                pkgs.pkg-config
        ];
        
        LD_LIBRARY_PATH="${pkgs.vulkan-loader}/lib:${pkgs.shaderc.lib}/lib:${pkgs.shaderc.dev}/lib";
        VULKAN_LIB_DIR="${pkgs.shaderc.dev}/lib";
        shellHook = "echo ${pkgs.vulkan-loader}";
}

And now to get the nvidia opengl/vulkan code linked properly.