optiscaler: package v0.9.1
stdenvNoCC + p7zip extraction; strips installer scripts and README, keeps Licenses/. dontFixup since the artifacts are Windows DLLs. meta.license is unfreeRedistributable to reflect the bundled XeSS (Intel SLA) alongside the GPL-3.0 source. Wires lib/overlays.nix into mkDesktopHost (was muffin-only) and adds "optiscaler" to the unfree allowlist on jovian hosts so yarn can consume it without flipping the global allowUnfree flag.
This commit is contained in:
@@ -237,6 +237,7 @@
|
||||
home-manager.users.${username} = import ./hosts/${hostname}/home.nix;
|
||||
}
|
||||
)
|
||||
{ nixpkgs.overlays = [ (import ./lib/overlays.nix) ]; }
|
||||
./hosts/${hostname}/default.nix
|
||||
];
|
||||
};
|
||||
|
||||
@@ -90,4 +90,67 @@ final: prev: {
|
||||
doCheck = false;
|
||||
meta.mainProgram = "mc-monitor";
|
||||
};
|
||||
|
||||
# OptiScaler: universal upscaler/frame-gen middleware. Bridges DLSS, XeSS,
|
||||
# and FSR backends so games shipping older upscalers can be retargeted at,
|
||||
# e.g., FSR 4 (RDNA 4 native, RDNA 3 INT8 via Mesa+Proton).
|
||||
#
|
||||
# Bundled binaries are unaudited Windows DLLs intended to be loaded under
|
||||
# Wine/Proton. The release tarball ships its own license tree which we
|
||||
# carry through verbatim under $out/Licenses for compliance.
|
||||
#
|
||||
# Bumping: drop the new asset URL + recompute hash. Verify $out still
|
||||
# contains OptiScaler.dll and OptiScaler.ini (consumers reference both by
|
||||
# name).
|
||||
optiscaler = prev.stdenvNoCC.mkDerivation rec {
|
||||
pname = "optiscaler";
|
||||
version = "0.9.1";
|
||||
|
||||
src = prev.fetchurl {
|
||||
url = "https://github.com/optiscaler/OptiScaler/releases/download/v${version}/Optiscaler_${version}-final.20260427._DSB.7z";
|
||||
hash = "sha256-VtGhjjoy2XjAE0hE6AO6jPBBNCJs/NuCg/aNGAg2+rA=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ prev.p7zip ];
|
||||
|
||||
unpackPhase = ''
|
||||
runHook preUnpack
|
||||
mkdir -p source
|
||||
7z x -bd -o"source" $src >/dev/null
|
||||
runHook postUnpack
|
||||
'';
|
||||
|
||||
sourceRoot = "source";
|
||||
|
||||
dontConfigure = true;
|
||||
dontBuild = true;
|
||||
# Windows DLLs; nothing to patchelf or strip.
|
||||
dontFixup = true;
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
mkdir -p $out
|
||||
cp -r ./* $out/
|
||||
# The installer scripts and "extract me" README aren't useful at runtime.
|
||||
rm -f $out/setup_linux.sh $out/setup_windows.bat
|
||||
rm -f "$out/!! README_EXTRACT ALL FILES TO GAME FOLDER !!.txt"
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with prev.lib; {
|
||||
description = "Upscaler/frame-gen middleware bridging DLSS, XeSS, and FSR backends";
|
||||
homepage = "https://github.com/optiscaler/OptiScaler";
|
||||
# OptiScaler proper is GPL-3.0-or-later. The bundled FidelityFX SDK is
|
||||
# MIT-0; XeSS ships its own Intel SLA. License texts are preserved at
|
||||
# $out/Licenses/.
|
||||
license = with licenses; [
|
||||
gpl3Plus
|
||||
mit0
|
||||
unfreeRedistributable
|
||||
];
|
||||
sourceProvenance = [ sourceTypes.binaryNativeCode ];
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ ];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -22,6 +22,9 @@
|
||||
"steam-original"
|
||||
"steam-unwrapped"
|
||||
"steam-run"
|
||||
# OptiScaler bundles XeSS (Intel SLA) and FidelityFX SDK alongside its own GPL-3.0
|
||||
# source. The package's meta.license is unfreeRedistributable to reflect the bundle.
|
||||
"optiscaler"
|
||||
];
|
||||
|
||||
jovian.steam = {
|
||||
|
||||
Reference in New Issue
Block a user