diff options
Diffstat (limited to 'pkgs/tools/wayland/wluma/default.nix')
-rw-r--r-- | pkgs/tools/wayland/wluma/default.nix | 35 |
1 files changed, 30 insertions, 5 deletions
diff --git a/pkgs/tools/wayland/wluma/default.nix b/pkgs/tools/wayland/wluma/default.nix index 2921e3858b416..fd4db1a934ab2 100644 --- a/pkgs/tools/wayland/wluma/default.nix +++ b/pkgs/tools/wayland/wluma/default.nix @@ -1,35 +1,60 @@ { lib +, stdenv , fetchFromGitHub , makeWrapper , rustPlatform , vulkan-loader +, pkg-config +, udev +, v4l-utils +, llvmPackages }: rustPlatform.buildRustPackage rec { pname = "wluma"; - version = "2.0.1"; + version = "4.1.0"; src = fetchFromGitHub { owner = "maximbaz"; repo = "wluma"; rev = version; - sha256 = "sha256-fqBEJS+SQoPNNEw6jyoiZjq/chY73bQ+cM21F8RdNPE="; + sha256 = "sha256-kUYh4RmD4zRI3ZNZWl2oWcO0Ze5czLBXUgPMl/cLW/I="; }; - nativeBuildInputs = [ makeWrapper ]; + nativeBuildInputs = [ + makeWrapper + pkg-config + ]; + + buildInputs = [ + udev + v4l-utils.lib + ]; + + LIBCLANG_PATH="${llvmPackages.libclang.lib}/lib"; + + # Works around the issue with rust-bindgen and the Nix gcc wrapper: + # https://hoverbear.org/blog/rust-bindgen-in-nix/ + preBuild = '' + export BINDGEN_EXTRA_CLANG_ARGS="$(< ${stdenv.cc}/nix-support/libc-cflags) \ + $(< ${stdenv.cc}/nix-support/cc-cflags) \ + -isystem ${llvmPackages.libclang.lib}/lib/clang/${lib.getVersion llvmPackages.clang}/include \ + -idirafter ${stdenv.cc.cc}/lib/gcc/${stdenv.hostPlatform.config}/${lib.getVersion stdenv.cc.cc}/include \ + -idirafter ${v4l-utils.dev}/include" + ''; postInstall = '' wrapProgram $out/bin/wluma \ --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ vulkan-loader ]}" ''; - cargoSha256 = "sha256-dZBA6VeJRHmqpazRwjLP1kYcYYN5LCFWkIaXqp4/RkQ="; + cargoSha256 = "sha256-oOIL18gij7DdvgNOuaHtuyFemNBUB85Ouh/sdhKas+s="; meta = with lib; { description = "Automatic brightness adjustment based on screen contents and ALS"; homepage = "https://github.com/maximbaz/wluma"; license = licenses.isc; - maintainers = with maintainers; [ yevhenshymotiuk ]; + maintainers = with maintainers; [ yshym jmc-figueira ]; platforms = platforms.linux; }; } |