diff --git a/local_packages/lsfg-vk/package.nix b/local_packages/lsfg-vk/package.nix new file mode 100644 index 0000000..cf7a18d --- /dev/null +++ b/local_packages/lsfg-vk/package.nix @@ -0,0 +1,47 @@ +{ + lib, + fetchFromGitHub, + cmake, + vulkan-headers, + llvmPackages, + qt6, +}: + +llvmPackages.stdenv.mkDerivation (finalAttrs: { + pname = "lsfg-vk"; + version = "2.0.0-dev"; + + src = fetchFromGitHub { + owner = "PancakeTAS"; + repo = "lsfg-vk"; + tag = "v${finalAttrs.version}"; + hash = "sha256-Qb3vufCzNpM1r+vgo8M9nnA7CENgGTithWG0oXqLKbI="; + }; + + nativeBuildInputs = [ + llvmPackages.clang-tools + llvmPackages.libllvm + cmake + qt6.wrapQtAppsHook + ]; + + buildInputs = [ + vulkan-headers + qt6.qtbase + qt6.qtdeclarative + ]; + + cmakeFlags = [ + "-DLSFGVK_LAYER_LIBRARY_PATH=${placeholder "out"}/lib/liblsfg-vk-layer.so" + "-DLSFGVK_BUILD_UI=ON" + "-DLSFGVK_INSTALL_XDG_FILES=ON" + "-DLSFGVK_BUILD_CLI=OFF" + ]; + + meta = { + description = "Lossless Scaling Frame Generation on Linux"; + homepage = "https://github.com/PancakeTAS/lsfg-vk/"; + license = lib.licenses.mit; + platforms = lib.platforms.linux; + }; +}) \ No newline at end of file diff --git a/modules/system-packages.nix b/modules/system-packages.nix index 3404bd7..7abb5a1 100644 --- a/modules/system-packages.nix +++ b/modules/system-packages.nix @@ -43,6 +43,7 @@ in cmake sbctl # For secure boot with Limine jq # I use it somewhere in my nixtamal manifest + (functions.mkUnstable lsfg-vk) # TODO: Split package in 2 so I can put the ui here, and the layer in mesa.nix ]; programs.steam = { diff --git a/tamal/lock.json b/tamal/lock.json index b8ed31b..aed0c08 100644 --- a/tamal/lock.json +++ b/tamal/lock.json @@ -8,6 +8,7 @@ ,"home-manager":{"sn":"home-manager-src","kd":[1,{"ft":0,"ur":"https://github.com/nix-community/home-manager/archive/062581938b4a378a82dfbb294b494808157153a1.tar.gz","ms":[]}],"ha":{"al":2,"vl":"blake3-VdWT6KMdjo9nyxIMyp7px/rBmJfdOqslELMxgZqsEgs="},"fv":"062581938b4a378a82dfbb294b494808157153a1","ps":[]} ,"lact-patch":{"sn":"lact-patch-src","kd":[0,{"ft":0,"ur":"https://patch-diff.githubusercontent.com/raw/ilya-zlobintsev/LACT/pull/1080.patch","ms":[]}],"ha":{"al":2,"vl":"blake3-x+HU/32454H6ZHu2i3AkdPECt9Jj4vW0Ac2jTzjpUvk="},"fv":"W/735aa2b881ef2024d0d6fcb4d2d48dd4","ps":[]} ,"low_latency_layer-git":{"sn":"low_latency_layer-git-src","kd":[1,{"ft":0,"ur":"https://github.com/Korthos-Software/low_latency_layer/archive/3138b14ebd059cd540444771dd184fbf7ead2a12.tar.gz","ms":[]}],"ha":{"al":2,"vl":"blake3-eaek3w60syOHOmRNdCDBTQ+MZw4O9fDGbpirlyuUnoQ="},"fv":"3138b14ebd059cd540444771dd184fbf7ead2a12","ps":[]} +,"lsfg-vk-git":{"sn":"lsfg-vk-git-src","kd":[1,{"ft":0,"ur":"https://github.com/PancakeTAS/lsfg-vk/archive/218820e8dc2d69c21a7a0775b5c47f2c447ed31a.tar.gz","ms":[]}],"ha":{"al":2,"vl":"blake3-9pXQnLA9WUYcbk0d8eoDd/GE/YcEOTT272R8Ah/O1us="},"fv":"218820e8dc2d69c21a7a0775b5c47f2c447ed31a","ps":[]} ,"mesa-git":{"sn":"mesa-git-src","kd":[1,{"ft":0,"ur":"https://gitlab.freedesktop.org/mesa/mesa/-/archive/364ae9647756d9045a632c32370181fd1606fd82/mesa-364ae9647756d9045a632c32370181fd1606fd82.tar.gz","ms":[]}],"ha":{"al":2,"vl":"blake3-VgJgh2pD8fsGL3zil0r71AbvfRm1QbRekrddsNOvMdo="},"fv":"364ae9647756d9045a632c32370181fd1606fd82","ps":[]} ,"mpv":{"sn":"mpv-src","kd":[1,{"ft":0,"ur":"https://github.com/mpv-player/mpv/archive/refs/tags/v0.41.0.tar.gz","ms":[]}],"ha":{"al":2,"vl":"blake3-4u9KCKKEvSoOSO/7oZGIpnuSGcFc2rVmcJfdpFzwc5w="},"fv":"e04638a4b4eac258e679673d2a4171bde3f6c41eacb7e3d860c9a435f07eb9da","ps":["mpv_buffers_fix"]} ,"nix-cachyos-kernel":{"sn":"nix-cachyos-kernel-src","kd":[1,{"ft":0,"ur":"https://github.com/xddxdd/nix-cachyos-kernel/archive/f0b6b9acd227ed4822b0dfa55998919a55d466e6.tar.gz","ms":[]}],"ha":{"al":2,"vl":"blake3-a2gLo0lGrfmwZMEEo5JgGY/nWjiJqXkcacgb2JMDDak="},"fv":"f0b6b9acd227ed4822b0dfa55998919a55d466e6","ps":[]} diff --git a/tamal/manifest.kdl b/tamal/manifest.kdl index bb5b204..b8b03f9 100644 --- a/tamal/manifest.kdl +++ b/tamal/manifest.kdl @@ -140,6 +140,16 @@ inputs { | cut -f1 } } + lsfg-vk-git { + archive { + url "https://github.com/PancakeTAS/lsfg-vk/archive/{{fresh_value}}.tar.gz" + } + fresh-cmd { + $ git ls-remote --branches "https://github.com/PancakeTAS/lsfg-vk.git" --refs "refs/heads/develop" + | cut -f1 + } + } + // Patches lact-patch { // TODO: Remove this when upstream releases a new version file { url "https://patch-diff.githubusercontent.com/raw/ilya-zlobintsev/LACT/pull/1080.patch"