1{
2 stdenv,
3 lib,
4 virtualglLib,
5 virtualglLib_i686 ? null,
6 makeWrapper,
7 vulkan-loader,
8 addDriverRunpath,
9}:
10
11stdenv.mkDerivation {
12 pname = "virtualgl";
13 version = lib.getVersion virtualglLib;
14
15 paths = [ virtualglLib ];
16 nativeBuildInputs = [ makeWrapper ];
17
18 buildCommand = ''
19 mkdir -p $out/bin
20 for i in ${virtualglLib}/bin/* ${virtualglLib}/bin/.vglrun*; do
21 ln -s "$i" $out/bin
22 done
23
24 wrapProgram $out/bin/vglrun \
25 --prefix LD_LIBRARY_PATH : "${
26 lib.makeLibraryPath [
27 virtualglLib
28 virtualglLib_i686
29
30 addDriverRunpath.driverLink
31
32 # Needed for vulkaninfo to work
33 vulkan-loader
34 ]
35 }"
36 ''
37 + lib.optionalString (virtualglLib_i686 != null) ''
38 ln -sf ${virtualglLib_i686}/bin/.vglrun.vars32 $out/bin
39 '';
40
41 meta = {
42 platforms = lib.platforms.linux;
43 inherit (virtualglLib.meta) license;
44 };
45}