110 lines
1.8 KiB
Nix
110 lines
1.8 KiB
Nix
{ lib
|
|
, stdenv
|
|
, fetchFromGitHub
|
|
, llvmPackages_18
|
|
, cmake
|
|
, pkg-config
|
|
, git
|
|
, qt6
|
|
, alsa-lib
|
|
, libpulseaudio
|
|
, openal
|
|
, openssl
|
|
, zlib
|
|
, libedit
|
|
, udev
|
|
, libevdev
|
|
, SDL2
|
|
, jack2
|
|
, sndio
|
|
, vulkan-headers
|
|
, vulkan-utility-libraries
|
|
, vulkan-tools
|
|
, ffmpeg
|
|
, fmt
|
|
, glslang
|
|
, libxkbcommon
|
|
, wayland
|
|
, xorg
|
|
, sdl3
|
|
, stb
|
|
, wayland-protocols
|
|
, libpng
|
|
}:
|
|
stdenv.mkDerivation {
|
|
pname = "shadps4";
|
|
version = "0.6.0";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "shadps4-emu";
|
|
repo = "shadPS4";
|
|
rev = "9061028ce588037fa6f467cd2c0740d10ed725ed";
|
|
hash = "sha256-XhfJx1sDFz+RwhwcBA8W6WV6y1rDDvpyQe3v3NaSu2I=";
|
|
fetchSubmodules = true;
|
|
};
|
|
|
|
nativeBuildInputs = [
|
|
llvmPackages_18.clang
|
|
cmake
|
|
pkg-config
|
|
git
|
|
qt6.wrapQtAppsHook
|
|
];
|
|
|
|
buildInputs = [
|
|
alsa-lib
|
|
libpulseaudio
|
|
openal
|
|
openssl
|
|
zlib
|
|
libedit
|
|
udev
|
|
libevdev
|
|
SDL2
|
|
jack2
|
|
sndio
|
|
qt6.qtbase
|
|
qt6.qttools
|
|
qt6.qtmultimedia
|
|
|
|
vulkan-headers
|
|
vulkan-utility-libraries
|
|
vulkan-tools
|
|
|
|
ffmpeg
|
|
fmt
|
|
glslang
|
|
libxkbcommon
|
|
wayland
|
|
xorg.libxcb
|
|
xorg.xcbutil
|
|
xorg.xcbutilkeysyms
|
|
xorg.xcbutilwm
|
|
sdl3
|
|
stb
|
|
qt6.qtwayland
|
|
wayland-protocols
|
|
libpng
|
|
];
|
|
|
|
cmakeFlags = [
|
|
(lib.cmakeBool "ENABLE_QT_GUI" true)
|
|
(lib.cmakeBool "ENABLE_UPDATER" false)
|
|
];
|
|
|
|
cmakeBuildType = "RelWithDebugInfo";
|
|
dontStrip = true;
|
|
|
|
installPhase = ''
|
|
runHook preInstall
|
|
|
|
install -D -t $out/bin shadps4
|
|
install -Dm644 $src/.github/shadps4.png $out/share/icons/hicolor/512x512/apps/net.shadps4.shadPS4.png
|
|
install -Dm644 -t $out/share/applications $src/dist/net.shadps4.shadPS4.desktop
|
|
install -Dm644 -t $out/share/metainfo $src/dist/net.shadps4.shadPS4.metainfo.xml
|
|
|
|
runHook postInstall
|
|
'';
|
|
|
|
}
|