rewrite reproducer as quickshell qml config with layer-shell surfaces
This commit is contained in:
parent
6fedbd72aa
commit
f00308b1f0
6 changed files with 72 additions and 125 deletions
37
flake.nix
37
flake.nix
|
|
@ -89,28 +89,21 @@
|
|||
docs = pkgs.callPackage ./nix/docs.nix { inherit self; };
|
||||
default = nova-shell;
|
||||
|
||||
# Reproducer for the qtbase wayland screen UAF, built twice:
|
||||
# patched (should survive) and unpatched (should crash).
|
||||
screen-uaf-reproducer-patched = pkgs.stdenv.mkDerivation {
|
||||
pname = "screen-uaf-reproducer-patched";
|
||||
version = "0";
|
||||
src = ./test/screen-uaf-reproducer;
|
||||
nativeBuildInputs = [
|
||||
pkgs.cmake
|
||||
pkgs.qt6.wrapQtAppsHook
|
||||
];
|
||||
buildInputs = [ pkgs.qt6.qtbase ];
|
||||
};
|
||||
screen-uaf-reproducer-unpatched = rawPkgs.stdenv.mkDerivation {
|
||||
pname = "screen-uaf-reproducer-unpatched";
|
||||
version = "0";
|
||||
src = ./test/screen-uaf-reproducer;
|
||||
nativeBuildInputs = [
|
||||
rawPkgs.cmake
|
||||
rawPkgs.qt6.wrapQtAppsHook
|
||||
];
|
||||
buildInputs = [ rawPkgs.qt6.qtbase ];
|
||||
};
|
||||
# Reproducer wrappers: run test/screen-uaf-reproducer/shell.qml
|
||||
# with patched vs unpatched quickshell to confirm the fix.
|
||||
screen-uaf-reproducer-patched = pkgs.writeShellScriptBin "screen-uaf-reproducer-patched" ''
|
||||
exec ${qs}/bin/quickshell -p ${./test/screen-uaf-reproducer/shell.qml}
|
||||
'';
|
||||
screen-uaf-reproducer-unpatched =
|
||||
let
|
||||
qsUnpatched = (rawPkgs.extend quickshell.overlays.default).quickshell.override {
|
||||
withX11 = false;
|
||||
withI3 = false;
|
||||
};
|
||||
in
|
||||
rawPkgs.writeShellScriptBin "screen-uaf-reproducer-unpatched" ''
|
||||
exec ${qsUnpatched}/bin/quickshell -p ${./test/screen-uaf-reproducer/shell.qml}
|
||||
'';
|
||||
}
|
||||
);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue