diff --git a/pkgs/by-name/ui/uiua/package.nix b/pkgs/by-name/ui/uiua/package.nix index b0a59ab2cab72..87a0bbccf4b11 100644 --- a/pkgs/by-name/ui/uiua/package.nix +++ b/pkgs/by-name/ui/uiua/package.nix @@ -6,11 +6,17 @@ rustPlatform, fetchFromGitHub, pkg-config, + versionCheckHook, libffi, audioSupport ? true, alsa-lib, webcamSupport ? false, + libGL, + libxkbcommon, + wayland, + xorg, + windowSupport ? false, runCommand, }: @@ -34,7 +40,7 @@ lib.fix ( src = fetchFromGitHub { owner = "uiua-lang"; repo = "uiua"; - inherit (versionInfo) rev hash; + inherit (versionInfo) tag hash; }; nativeBuildInputs = @@ -48,7 +54,28 @@ lib.fix ( buildFeatures = [ "libffi/system" ] # force libffi to be linked dynamically instead of rebuilding it ++ lib.optional audioSupport "audio" - ++ lib.optional webcamSupport "webcam"; + ++ lib.optional webcamSupport "webcam" + ++ lib.optional windowSupport "window"; + + postFixup = + let + runtimeDependencies = lib.optionals windowSupport [ + libGL + libxkbcommon + wayland + xorg.libX11 + xorg.libXcursor + xorg.libXi + xorg.libXrandr + ]; + in + lib.optionalString (runtimeDependencies != [ ] && stdenv.hostPlatform.isLinux) '' + patchelf --add-rpath ${lib.makeLibraryPath runtimeDependencies} $out/bin/uiua + ''; + + nativeInstallCheckInputs = [ versionCheckHook ]; + versionCheckProgramArg = "--version"; + doInstallCheck = true; passthru.updateScript = versionInfo.updateScript; passthru.tests.run = runCommand "uiua-test-run" { nativeBuildInputs = [ uiua ]; } '' diff --git a/pkgs/by-name/ui/uiua/stable.nix b/pkgs/by-name/ui/uiua/stable.nix index 8c777a7cac6c4..54fa065f5a1e4 100644 --- a/pkgs/by-name/ui/uiua/stable.nix +++ b/pkgs/by-name/ui/uiua/stable.nix @@ -1,6 +1,6 @@ rec { version = "0.14.1"; - rev = version; + tag = version; hash = "sha256-+FiJYxB2Lb1B7l9QEuB/XzdEYgJZmYAQpKimRIhWwhc="; cargoHash = "sha256-0ZK87aX3akEPEXIsFrbOvTfhW24TZCuCcSVp+j8ylyg="; updateScript = ./update-stable.sh; diff --git a/pkgs/by-name/ui/uiua/unstable.nix b/pkgs/by-name/ui/uiua/unstable.nix index 847c99ef207e9..0f9b6f39cbc1f 100644 --- a/pkgs/by-name/ui/uiua/unstable.nix +++ b/pkgs/by-name/ui/uiua/unstable.nix @@ -1,6 +1,6 @@ rec { version = "0.14.1"; - rev = version; + tag = version; hash = "sha256-+FiJYxB2Lb1B7l9QEuB/XzdEYgJZmYAQpKimRIhWwhc="; cargoHash = "sha256-0ZK87aX3akEPEXIsFrbOvTfhW24TZCuCcSVp+j8ylyg="; updateScript = ./update-unstable.sh;