58 lines
1.5 KiB
Nix
58 lines
1.5 KiB
Nix
{ fetchFromGitLab
|
|
, lib
|
|
, meson
|
|
, ninja
|
|
, python3
|
|
, weston
|
|
, xorg
|
|
, xwayland
|
|
, withCage ? false , cage
|
|
, withKwin ? false , kdePackages
|
|
, withMutter ? false, gnome
|
|
, withDbus ? withMutter , dbus # Since 0.0.3, mutter compositors run with their own DBUS sessions
|
|
}:
|
|
let
|
|
compositors = [ weston ]
|
|
++ lib.optional withCage cage
|
|
++ lib.optional withKwin kdePackages.kwin
|
|
++ lib.optional withMutter gnome.mutter ++ lib.optional withDbus dbus
|
|
;
|
|
in
|
|
python3.pkgs.buildPythonApplication rec {
|
|
pname = "xwayland-run";
|
|
version = "0.0.3";
|
|
|
|
src = fetchFromGitLab {
|
|
domain = "gitlab.freedesktop.org";
|
|
owner = "ofourdan";
|
|
repo = "xwayland-run";
|
|
rev = version;
|
|
hash = "sha256-yYULbbcFDT1zRFn1UWS0dyuchGYnOZypDmxqc14RYF4=";
|
|
};
|
|
|
|
pyproject = false;
|
|
|
|
outputs = [ "out" "man" ];
|
|
|
|
nativeBuildInputs = [
|
|
meson
|
|
ninja
|
|
];
|
|
|
|
postInstall = ''
|
|
wrapProgram $out/bin/wlheadless-run \
|
|
--prefix PATH : ${lib.makeBinPath compositors}
|
|
wrapProgram $out/bin/xwayland-run \
|
|
--prefix PATH : ${lib.makeBinPath [ xwayland xorg.xauth ]}
|
|
wrapProgram $out/bin/xwfb-run \
|
|
--prefix PATH : ${lib.makeBinPath (compositors ++ [ xwayland xorg.xauth ])}
|
|
'';
|
|
|
|
meta = with lib; {
|
|
description = "A set of small utilities revolving around running Xwayland and various Wayland compositor headless";
|
|
homepage = "https://gitlab.freedesktop.org/ofourdan/xwayland-run";
|
|
license = licenses.gpl2Only;
|
|
maintainers = with maintainers; [ arthsmn ];
|
|
platforms = platforms.linux;
|
|
};
|
|
}
|