21 stdenv.mkDerivation rec {
22 pname = "vintagestory";
26 url = "https://cdn.vintagestory.at/gamefiles/stable/vs_client_linux-x64_${version}.tar.gz";
27 hash = "sha256-luZwRKVptSd69tCaf6Jv0YOfwOeDOcuY7VoL+21tTEo=";
31 nativeBuildInputs = [ makeWrapper copyDesktopItems ];
33 buildInputs = [ dotnet-runtime_7 ];
35 runtimeLibs = lib.makeLibraryPath ([
51 desktopItems = makeDesktopItem {
52 name = "vintagestory";
53 desktopName = "Vintage Story";
54 exec = "vintagestory";
55 icon = "vintagestory";
56 comment = "Innovate and explore in a sandbox world";
57 categories = [ "Game" ];
63 mkdir -p $out/share/vintagestory $out/bin $out/share/pixmaps $out/share/fonts/truetype
64 cp -r * $out/share/vintagestory
65 cp $out/share/vintagestory/assets/gameicon.xpm $out/share/pixmaps/vintagestory.xpm
66 cp $out/share/vintagestory/assets/game/fonts/*.ttf $out/share/fonts/truetype
72 makeWrapper ${dotnet-runtime_7}/bin/dotnet $out/bin/vintagestory \
73 --prefix LD_LIBRARY_PATH : "${runtimeLibs}" \
74 --add-flags $out/share/vintagestory/Vintagestory.dll
75 makeWrapper ${dotnet-runtime_7}/bin/dotnet $out/bin/vintagestory-server \
76 --prefix LD_LIBRARY_PATH : "${runtimeLibs}" \
77 --add-flags $out/share/vintagestory/VintagestoryServer.dll
79 find "$out/share/vintagestory/assets/" -not -path "*/fonts/*" -regex ".*/.*[A-Z].*" | while read -r file; do
80 local filename="$(basename -- "$file")"
81 ln -sf "$filename" "''${file%/*}"/"''${filename,,}"
86 description = "An in-development indie sandbox game about innovation and exploration";
87 homepage = "https://www.vintagestory.at/";
88 license = licenses.unfree;
89 maintainers = with maintainers; [ artturin gigglesquid ];