shadps4: 0.7.0 -> 0.9.0 (#402418)

Changed files
+17 -43
nixos
tests
pkgs
by-name
sh
shadps4
+15 -41
nixos/tests/shadps4.nix
···
in
pkgs.runCommand "OpenOrbis-PNG-Sample"
{
-
nativeBuildInputs = with pkgs; [ unzip ];
meta.license = lib.licenses.gpl3Only;
}
''
unzip ${sample-packages} samples/IV0000-BREW00086_00-IPNGDRAWEX000000.pkg
-
mkdir $out
-
mv samples/IV0000-BREW00086_00-IPNGDRAWEX000000.pkg $out/OpenOrbis-PNG-Sample.pkg
'';
systemPackages = with pkgs; [
···
machine.wait_for_text("Play Time")
machine.screenshot("0002-shadps4-started")
-
with subtest("installing example works"):
machine.succeed("xdotool mousemove 20 30 click 1") # click on "File"
-
machine.wait_for_text("Install Packages")
machine.send_key("down")
machine.send_key("ret")
# Pick the PNG sample (hello world runs too, but text-only output is currently broken)
machine.wait_for_text("Look in")
-
machine.send_chars("/etc/openorbis-sample-packages/OpenOrbis-PNG-Sample.pkg\n")
-
-
# Install to default dir
-
machine.wait_for_text("which directory")
-
machine.send_key("ret")
-
-
# Wait for installation getting done & return to main window
-
machine.wait_for_text("successfully installed")
-
machine.send_key("ret")
-
-
# Sample should now be listed
-
machine.wait_for_text("OpenOrbis PNG Sample")
-
machine.screenshot("0003-shadps4-sample-installed")
-
-
with subtest("emulation works-ish"):
-
# Ensure that selection colours isn't present already
-
assert (
-
check_for_color(selectionColor)(True) == False
-
), "selectionColor {} was present on the screen before we selected anything!".format(selectionColor)
-
-
# Select first installed app
-
machine.succeed("xdotool mousemove 20 150 click 1")
-
-
# Waiting for selection to be confirmed
-
with machine.nested("Waiting for the screen to have selectionColor {} on it:".format(selectionColor)):
-
retry(check_for_color(selectionColor))
-
-
# Ensure that chosen openorbis logo colour isn't present already
-
assert (
-
check_for_color(openorbisColor)(True) == False
-
), "openorbisColor {} was present on the screen before we selected anything!".format(openorbisColor)
-
-
# Click launch button
-
machine.succeed("xdotool mousemove 40 60 click 1")
-
machine.wait_for_console_text("Entering draw loop...")
# Look for logo
with machine.nested("Waiting for the screen to have openorbisColor {} on it:".format(openorbisColor)):
retry(check_for_color(openorbisColor))
-
machine.screenshot("0004-shadps4-sample-running")
'';
}
···
in
pkgs.runCommand "OpenOrbis-PNG-Sample"
{
+
nativeBuildInputs = with pkgs; [
+
unzip
+
liborbispkg-pkgtool
+
];
meta.license = lib.licenses.gpl3Only;
}
''
unzip ${sample-packages} samples/IV0000-BREW00086_00-IPNGDRAWEX000000.pkg
+
mkdir -p $out/OpenOrbis-PNG-Sample
+
pkgtool pkg_extract samples/IV0000-BREW00086_00-IPNGDRAWEX000000.pkg $out/OpenOrbis-PNG-Sample
'';
systemPackages = with pkgs; [
···
machine.wait_for_text("Play Time")
machine.screenshot("0002-shadps4-started")
+
with subtest("running example works"):
+
# Ensure that chosen openorbis logo colour isn't present already
+
assert (
+
check_for_color(openorbisColor)(True) == False
+
), "openorbisColor {} was present on the screen before we launched anything!".format(openorbisColor)
+
machine.succeed("xdotool mousemove 20 30 click 1") # click on "File"
+
machine.wait_for_text("Boot Game")
machine.send_key("down")
machine.send_key("ret")
# Pick the PNG sample (hello world runs too, but text-only output is currently broken)
machine.wait_for_text("Look in")
+
machine.send_chars("/etc/openorbis-sample-packages/OpenOrbis-PNG-Sample/uroot/eboot.bin\n")
# Look for logo
with machine.nested("Waiting for the screen to have openorbisColor {} on it:".format(openorbisColor)):
retry(check_for_color(openorbisColor))
+
machine.screenshot("0003-shadps4-sample-running")
'';
}
+2 -2
pkgs/by-name/sh/shadps4/package.nix
···
stdenv.mkDerivation (finalAttrs: {
pname = "shadps4";
-
version = "0.7.0";
src = fetchFromGitHub {
owner = "shadps4-emu";
repo = "shadPS4";
tag = "v.${finalAttrs.version}";
-
hash = "sha256-g55Ob74Yhnnrsv9+fNA1+uTJ0H2nyH5UT4ITHnrGKDo=";
fetchSubmodules = true;
};
···
stdenv.mkDerivation (finalAttrs: {
pname = "shadps4";
+
version = "0.9.0";
src = fetchFromGitHub {
owner = "shadps4-emu";
repo = "shadPS4";
tag = "v.${finalAttrs.version}";
+
hash = "sha256-ljnoClmijCds/ydqXaRuUL6/Qv/fGIkLyGsmfPDqvVo=";
fetchSubmodules = true;
};