nixpkgs/pkgs/by-name/wi/wio/package.nix
Alyssa Ross 2aa25051f7 wio: depend on wayland-scanner
Otherwise, wayland-scanner would be picked up from the wayland in
buildInputs, which isn't cross-friendly and will stop working when we
split wayland-scanner into a separate package.
2024-08-11 22:41:56 +03:00

79 lines
1.5 KiB
Nix

{ lib
, stdenv
, fetchFromGitHub
, alacritty
, cage
, cairo
, libxkbcommon
, makeWrapper
, mesa
, meson
, ninja
, pkg-config
, wayland-scanner
, udev
, unstableGitUpdater
, wayland
, wayland-protocols
, wlroots
, xwayland
}:
stdenv.mkDerivation (finalAttrs: {
pname = "wio";
version = "0.17.3-unstable-2024-04-30";
src = fetchFromGitHub {
owner = "Rubo3";
repo = "wio";
rev = "9d459df379efdcf20ea10906c48c79c506c32066";
hash = "sha256-Bn7mCVQPH/kH2WRsGPPGIGgvk0r894zZHCHl6BVmWVg=";
};
nativeBuildInputs = [
makeWrapper
meson
ninja
pkg-config
wayland-scanner
];
buildInputs = [
cairo
libxkbcommon
mesa
udev
wayland
wayland-protocols
wlroots
xwayland
];
strictDeps = false; # why is it so hard?
env.NIX_CFLAGS_COMPILE = "-Wno-error=maybe-uninitialized";
postInstall = ''
wrapProgram $out/bin/wio \
--prefix PATH ":" "${lib.makeBinPath [ alacritty cage ]}"
'';
passthru = {
providedSessions = [ "wio" ];
updateScript = unstableGitUpdater { };
};
meta = {
homepage = "https://github.com/Rubo3/wio";
description = "Wayland compositor similar to Plan 9's rio";
longDescription = ''
Wio is a Wayland compositor for Linux and FreeBSD which has a similar look
and feel to plan9's rio.
'';
license = with lib.licenses; [ bsd3 ];
mainProgram = "wio";
maintainers = with lib.maintainers; [ AndersonTorres ];
inherit (wayland.meta) platforms;
};
})