nixpkgs/pkgs/by-name/ni/niri/package.nix
2024-02-14 13:52:17 -07:00

76 lines
1.3 KiB
Nix

{ lib
, rustPlatform
, fetchFromGitHub
, pkg-config
, libxkbcommon
, pango
, pipewire
, seatd
, stdenv
, wayland
, systemd
, libinput
, mesa
, fontconfig
, libglvnd
, libclang
, autoPatchelfHook
, clang
}:
rustPlatform.buildRustPackage rec {
pname = "niri";
version = "0.1.1";
src = fetchFromGitHub {
owner = "YaLTeR";
repo = "niri";
rev = "v${version}";
hash = "sha256-+Y7dnq8gwVxefwvRnamqGneCTI4uUXgAo0SEffIvNB0=";
};
cargoLock = {
lockFile = ./Cargo.lock;
outputHashes = {
"smithay-0.3.0" = "sha256-TWq4L7Pe4/s0+hGjvTixoOFQ3P6tJXzV4/VgKcJ0tWU=";
};
};
nativeBuildInputs = [
pkg-config
rustPlatform.bindgenHook
autoPatchelfHook
clang
];
buildInputs = [
wayland
systemd # For libudev
seatd # For libseat
libxkbcommon
libinput
mesa # For libgbm
fontconfig
stdenv.cc.cc.lib
pipewire
pango
];
runtimeDependencies = [
wayland
mesa
libglvnd # For libEGL
];
LIBCLANG_PATH = "${libclang.lib}/lib";
meta = with lib; {
description = "A scrollable-tiling Wayland compositor";
homepage = "https://github.com/YaLTeR/niri";
license = licenses.gpl3Only;
maintainers = with maintainers; [ iogamaster ];
mainProgram = "niri";
platforms = platforms.linux;
};
}