nixpkgs/pkgs/misc/emulators/duckstation/default.nix
2020-12-30 00:35:04 +00:00

35 lines
979 B
Nix

{ lib, mkDerivation, fetchFromGitHub, cmake, pkg-config, SDL2, qtbase
, wrapQtAppsHook, qttools, ninja, gtk3 }:
mkDerivation rec {
pname = "duckstation";
version = "unstable-2020-12-29";
src = fetchFromGitHub {
owner = "stenzek";
repo = pname;
rev = "f8dcfabc44ff8391b2d41eab2e883dc8f21a88b7";
sha256 = "0v6w4di4yj1hbxpqqrcw8rbfjg18g9kla8mnb3b5zgv7i4dyzykw";
};
nativeBuildInputs = [ cmake wrapQtAppsHook qttools ];
buildInputs = [ SDL2 qtbase gtk3 pkg-config ];
installPhase = ''
mkdir -p $out/
mv bin $out/
'';
# TODO:
# - vulkan graphics backend (OpenGL works).
# - default sound backend (cubeb) does not work, but SDL does.
meta = with lib; {
description =
"PlayStation 1 emulator focusing on playability, speed and long-term maintainability";
homepage = "https://github.com/stenzek/duckstation";
license = licenses.gpl3;
platforms = platforms.linux;
maintainers = [ maintainers.guibou ];
};
}