2024-08-02 08:54:05 -06:00
|
|
|
{ fetchFromGitHub }:
|
2024-07-22 20:58:01 -06:00
|
|
|
|
|
|
|
{
|
2024-08-02 08:54:05 -06:00
|
|
|
vkd3d-proton =
|
|
|
|
let
|
|
|
|
self = {
|
|
|
|
pname = "vkd3d-proton";
|
2024-08-02 09:01:16 -06:00
|
|
|
version = "2.13";
|
2024-07-22 20:58:01 -06:00
|
|
|
|
2024-08-02 08:54:05 -06:00
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "HansKristian-Work";
|
|
|
|
repo = "vkd3d-proton";
|
2024-08-02 08:57:05 -06:00
|
|
|
rev = "v${self.version}";
|
2024-08-02 08:54:05 -06:00
|
|
|
fetchSubmodules = true;
|
|
|
|
#
|
|
|
|
# Some files are filled by using Git commands; it requires deepClone.
|
|
|
|
# More info at `checkout_ref` function in nix-prefetch-git.
|
|
|
|
# However, `.git` is a bit nondeterministic (and Git itself makes no
|
|
|
|
# guarrantees whatsoever).
|
|
|
|
# Then, in order to enhance reproducibility, what we will do here is:
|
|
|
|
#
|
|
|
|
# - Execute the desired Git commands;
|
|
|
|
# - Save the obtained info into files;
|
|
|
|
# - Remove `.git` afterwards.
|
|
|
|
#
|
|
|
|
deepClone = true;
|
|
|
|
postFetch = ''
|
|
|
|
cd $out
|
|
|
|
mkdir -p .nixpkgs-auxfiles/
|
|
|
|
git describe --always --exclude='*' --abbrev=15 --dirty=0 > .nixpkgs-auxfiles/vkd3d_build
|
|
|
|
git describe --always --tags --dirty=+ > .nixpkgs-auxfiles/vkd3d_version
|
|
|
|
find $out -name .git -print0 | xargs -0 rm -fr
|
|
|
|
'';
|
2024-08-02 09:01:16 -06:00
|
|
|
hash = "sha256-dJYQ6pJdfRQwr8OrxxpWG6YMfeTXqzTrHXDd5Ecxbi8=";
|
2024-08-02 08:54:05 -06:00
|
|
|
};
|
2024-07-22 20:58:01 -06:00
|
|
|
};
|
2024-08-02 08:54:05 -06:00
|
|
|
in
|
2024-07-22 20:58:01 -06:00
|
|
|
self;
|
|
|
|
}
|