default.nix: update lsfg-vk to f998647

with the switch to submodules and some other changes we are able to simplify building this project and no longer need patches. thanks @PancakeTAS :3
This commit is contained in:
Nojus 2025-07-13 19:30:57 +02:00
parent 41df9e1b38
commit f24d8fe371
2 changed files with 6 additions and 87 deletions

View file

@ -1,52 +1,25 @@
{ lib
, fetchFromGitHub
, replaceVars
, cmake
, meson
, ninja
, SDL2
, glslang
, vulkan-headers
, vulkan-loader
, pkg-config
, llvmPackages
, python3
, spirv-headers
}: let
peparse-git = fetchFromGitHub {
owner = "trailofbits";
repo = "pe-parse";
rev = "v2.1.1";
hash = "sha256-WuG/OmzrXoH5O7+sSIdUVZP0aS63nuJwHgQfn12Q5xk=";
fetchSubmodules = true;
};
dxvk-git = fetchFromGitHub {
owner = "doitsujin";
repo = "dxvk";
rev = "v2.6.2";
hash = "sha256-nZEi9WYhpI0WaeguoZMV4nt+nfaErvgz5RNDyyZYCJA=";
fetchSubmodules = true;
};
in llvmPackages.stdenv.mkDerivation {
pname = "lsfg-vk";
version = "0.0.31";
version = "unstable-2025-07-13-f998647";
src = fetchFromGitHub {
owner = "PancakeTAS";
repo = "lsfg-vk";
rev = "3ec418fd0f802f245bc31511d33c94a25d045ae8";
hash = "sha256-xMRrqKaqKxzOjEFcLas6nRgvIpaZ94ca9BZemEPsIbU=";
rev = "f998647d74051467e39de9de2df2ff9a5996db5f";
hash = "sha256-X708aKFz3wqSVYsMvCKsY7kqi+2LTewnoOMrXFPVEPY=";
fetchSubmodules = true;
};
# we need to unvendor dxvk and pe-parse which would normally be downloaded from git during buildtime in the cmakefiles
patches = [
(replaceVars ./nix-cmake.patch {
inherit dxvk-git peparse-git python3;
})
];
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=Release"
];
@ -57,17 +30,13 @@ in llvmPackages.stdenv.mkDerivation {
llvmPackages.clang
llvmPackages.libllvm # needed for release builds
cmake
meson
ninja
pkg-config
glslang
python3
];
buildInputs = [
SDL2
vulkan-headers
vulkan-loader
spirv-headers
];
meta = with lib; {

View file

@ -1,50 +0,0 @@
diff --git a/cmake/FetchDXVK.cmake b/cmake/FetchDXVK.cmake
index f84de82..050b05b 100644
--- a/cmake/FetchDXVK.cmake
+++ b/cmake/FetchDXVK.cmake
@@ -9,12 +9,13 @@ else()
endif()
ExternalProject_Add(dxvk_git
- GIT_REPOSITORY "https://github.com/doitsujin/dxvk"
- GIT_TAG "v2.6.2"
+ URL file://@dxvk-git@
UPDATE_DISCONNECTED true
USES_TERMINAL_CONFIGURE true
USES_TERMINAL_BUILD true
BUILD_IN_SOURCE true
+ PATCH_COMMAND
+ sed -i -e "s|^#!.*python3|#!@python3@/bin/python3|" <SOURCE_DIR>/subprojects/libdisplay-info/tool/gen-search-table.py
CONFIGURE_COMMAND
sed -i s/private://g
src/dxvk/dxvk_shader.h &&
@@ -51,10 +52,13 @@ target_link_directories(dxvk
INTERFACE ${SOURCE_DIR}/build/src/dxgi
INTERFACE ${SOURCE_DIR}/build/src/d3d11
INTERFACE ${SOURCE_DIR}/build/src/spirv
- INTERFACE ${SOURCE_DIR}/build/src/util)
+ INTERFACE ${SOURCE_DIR}/build/src/util
+ INTERFACE ${SOURCE_DIR}/build/src/wsi
+ INTERFACE ${SOURCE_DIR}/build/src/vulkan
+ INTERFACE ${SOURCE_DIR}/build/subprojects/libdisplay-info)
target_include_directories(dxvk SYSTEM
INTERFACE ${SOURCE_DIR}/build-native/include/dxvk
INTERFACE ${SOURCE_DIR}/src
INTERFACE ${SOURCE_DIR}/include/spirv/include)
target_link_libraries(dxvk INTERFACE
- -Wl,--start-group dxgi d3d11 util ldxvk dxbc spirv -Wl,--end-group)
+ -Wl,--start-group dxgi d3d11 util ldxvk dxbc spirv wsi vkcommon display-info -Wl,--end-group)
diff --git a/cmake/FetchPeParse.cmake b/cmake/FetchPeParse.cmake
index df7879b..31a4b87 100644
--- a/cmake/FetchPeParse.cmake
+++ b/cmake/FetchPeParse.cmake
@@ -1,8 +1,7 @@
include(ExternalProject)
ExternalProject_Add(peparse_git
- GIT_REPOSITORY "https://github.com/trailofbits/pe-parse"
- GIT_TAG "v2.1.1"
+ URL file://@peparse-git@
UPDATE_DISCONNECTED true
USES_TERMINAL_CONFIGURE true
USES_TERMINAL_BUILD true