pcsx2: 1.7.3331 -> 1.7.4554
This commit is contained in:
parent
83ff7cdc65
commit
f9a0f4a620
2 changed files with 63 additions and 49 deletions
|
@ -1,90 +1,110 @@
|
|||
{ alsa-lib
|
||||
, cmake
|
||||
{ cmake
|
||||
, fetchFromGitHub
|
||||
, lib
|
||||
, stdenv
|
||||
, curl
|
||||
, ffmpeg
|
||||
, fmt
|
||||
, gettext
|
||||
, glib
|
||||
, gtk3
|
||||
, harfbuzz
|
||||
, lib
|
||||
, libaio
|
||||
, libbacktrace
|
||||
, libpcap
|
||||
, libpng
|
||||
, libpulseaudio
|
||||
, libsamplerate
|
||||
, libXdmcp
|
||||
, openssl
|
||||
, pcre
|
||||
, perl
|
||||
, libXrandr
|
||||
, libzip
|
||||
, pkg-config
|
||||
, portaudio
|
||||
, qtbase
|
||||
, qtsvg
|
||||
, qttools
|
||||
, qttranslations
|
||||
, qtwayland
|
||||
, rapidyaml
|
||||
, SDL2
|
||||
, soundtouch
|
||||
, stdenv
|
||||
, udev
|
||||
, vulkan-headers
|
||||
, vulkan-loader
|
||||
, wrapGAppsHook
|
||||
, wxGTK
|
||||
, zlib
|
||||
, wayland
|
||||
, wrapQtAppsHook
|
||||
, xz
|
||||
, zip
|
||||
}:
|
||||
|
||||
let
|
||||
# The pre-zipped files in releases don't have a versioned link, we need to zip them ourselves
|
||||
pcsx2_patches = fetchFromGitHub {
|
||||
owner = "PCSX2";
|
||||
repo = "pcsx2_patches";
|
||||
rev = "8db5ae467a35cc00dc50a65061aa78dc5115e6d1";
|
||||
sha256 = "sha256-68kD7IAhBMASFmkGwvyQ7ppO/3B1csAKik+rU792JI4=";
|
||||
};
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "pcsx2";
|
||||
version = "1.7.3331";
|
||||
# nixpkgs-update: no auto update
|
||||
version = "1.7.4554";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "PCSX2";
|
||||
repo = "pcsx2";
|
||||
fetchSubmodules = true;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-0RcmBMxKj/gnkNEjn2AUSSO1DzyNSf1lOZWPSUq6764=";
|
||||
sha256 = "sha256-9MRbpm7JdVmZwv8zD4lErzVTm7A4tYM0FgXE9KpX+/8=";
|
||||
};
|
||||
|
||||
cmakeFlags = [
|
||||
"-DDISABLE_ADVANCE_SIMD=TRUE"
|
||||
"-DDISABLE_PCSX2_WRAPPER=TRUE"
|
||||
"-DPACKAGE_MODE=TRUE"
|
||||
"-DWAYLAND_API=TRUE"
|
||||
"-DXDG_STD=TRUE"
|
||||
"-DUSE_VULKAN=TRUE"
|
||||
"-DUSE_SYSTEM_LIBS=ON"
|
||||
"-DDISABLE_BUILD_DATE=TRUE"
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ cmake perl pkg-config vulkan-headers wrapGAppsHook ];
|
||||
nativeBuildInputs = [ cmake pkg-config wrapQtAppsHook zip ];
|
||||
|
||||
buildInputs = [
|
||||
alsa-lib
|
||||
curl
|
||||
ffmpeg
|
||||
fmt
|
||||
gettext
|
||||
glib
|
||||
gtk3
|
||||
harfbuzz
|
||||
libaio
|
||||
libbacktrace
|
||||
libpcap
|
||||
libpng
|
||||
libpulseaudio
|
||||
libsamplerate
|
||||
libXdmcp
|
||||
openssl
|
||||
pcre
|
||||
portaudio
|
||||
libXrandr
|
||||
libzip
|
||||
qtbase
|
||||
qtsvg
|
||||
qttools
|
||||
qttranslations
|
||||
qtwayland
|
||||
rapidyaml
|
||||
SDL2
|
||||
soundtouch
|
||||
udev
|
||||
vulkan-headers
|
||||
vulkan-loader
|
||||
wayland
|
||||
wxGTK
|
||||
zlib
|
||||
xz
|
||||
];
|
||||
|
||||
preFixup = ''
|
||||
gappsWrapperArgs+=(
|
||||
--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ vulkan-loader ]}
|
||||
)
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp -a bin/pcsx2-qt bin/resources $out/bin/
|
||||
|
||||
install -Dm644 $src/pcsx2/Resources/AppIcon64.png $out/share/pixmaps/PCSX2.png
|
||||
install -Dm644 $src/.github/workflows/scripts/linux/pcsx2-qt.desktop $out/share/applications/PCSX2.desktop
|
||||
|
||||
zip -jq $out/bin/resources/patches.zip ${pcsx2_patches}/patches/*
|
||||
'';
|
||||
|
||||
qtWrapperArgs = [
|
||||
"--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [
|
||||
ffmpeg # It's loaded with dlopen. They plan to change it https://github.com/PCSX2/pcsx2/issues/8624
|
||||
libpulseaudio
|
||||
vulkan-loader
|
||||
]}"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Playstation 2 emulator";
|
||||
longDescription = ''
|
||||
|
@ -95,13 +115,9 @@ stdenv.mkDerivation rec {
|
|||
PC, with many additional features and benefits.
|
||||
'';
|
||||
homepage = "https://pcsx2.net";
|
||||
license = with licenses; [ gpl3 lgpl3 ];
|
||||
maintainers = with maintainers; [ hrdinka govanify ];
|
||||
|
||||
# PCSX2's source code is released under LGPLv3+. It However ships
|
||||
# additional data files and code that are licensed differently.
|
||||
# This might be solved in future, for now we should stick with
|
||||
# license.free
|
||||
license = licenses.free;
|
||||
mainProgram = "pcsx2-qt";
|
||||
platforms = platforms.x86_64;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -2399,9 +2399,7 @@ with pkgs;
|
|||
|
||||
pcem = callPackage ../applications/emulators/pcem { };
|
||||
|
||||
pcsx2 = callPackage ../applications/emulators/pcsx2 {
|
||||
wxGTK = wxGTK32;
|
||||
};
|
||||
pcsx2 = qt6Packages.callPackage ../applications/emulators/pcsx2 { };
|
||||
|
||||
pcsxr = callPackage ../applications/emulators/pcsxr { };
|
||||
|
||||
|
|
Loading…
Reference in a new issue