Nix: Исправлен путь к динамической библиотеке для JOGL (обработка)

#java #clojure #processing #nix

Вопрос:

У меня есть проект Clojure, использующий обработку с помощью Quil. Это настраивается с помощью deps.edn :

 {:deps {org.clojure/clojure {:mvn/version "1.9.0"}
        quil/quil {:mvn/version "3.1.0"}
        thi.ng/geom {:mvn/version "1.0.0-RC3"
                     :exclusions [org.jogamp.jogl/jogl-all
                                  org.jogamp.gluegen/gluegen-rt]}}}
 

Я хочу настроить direnv via nix, для которого я создал следующие два файла:

 # .envrc
eval "$(lorri direnv)"
 

И shell.nix это выглядит так:

 # shell.nix
{ pkgs ? import <nixpkgs> { }, lib ? pkgs.stdenv.lib }:

pkgs.mkShell rec {
  name = "quil-env";
  buildInputs = with pkgs; [
    xorg_sys_opengl
  ];
  LD_LIBRARY_PATH = "${lib.makeLibraryPath buildInputs}";
}
 

При использовании рендерера P2D и P3D и выполнении эскиза я получаю такую ошибку:

 CompilerException java.lang.UnsatisfiedLinkError: /tmp/jogamp_0000/file_cache/jln88726915367994911/jln327096340966828580/natives/linux-amd64/libnativewindow_awt.so: libXxf86vm.so.1: cannot open shared object file: No such file or directory, compiling:(sixteen.clj:58:1)
 

Там есть libXxf86vm.so.1 вход $LD_LIBRARY_PATH . Что мне нужно сделать, чтобы его подхватила Java?