nixpkgs/pkgs/by-name/xw/xwayland-run/package.nix
2024-07-15 10:39:30 -03:00

60 lines
1.6 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.4";
src = fetchFromGitLab {
domain = "gitlab.freedesktop.org";
owner = "ofourdan";
repo = "xwayland-run";
rev = version;
hash = "sha256-FP/2KNPehZEGKXr+fKdVj4DXzRMpfc3x7K6vH6ZsGdo=";
};
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 = {
changelog = "https://gitlab.freedesktop.org/ofourdan/xwayland-run/-/releases/${src.rev}";
description = "Set of small utilities revolving around running Xwayland and various Wayland compositor headless";
homepage = "https://gitlab.freedesktop.org/ofourdan/xwayland-run";
license = lib.licenses.gpl2Only;
maintainers = with lib.maintainers; [ arthsmn ];
platforms = lib.platforms.linux;
};
}