Skip to content

Test a_refill_that_queues_nothing_says_so_rather_than_going_quiet fails in Nix sandbox #478

Description

@LordMZTE

Describe the bug
The test mentioned in the title fails when trying to build spotatui in a Nix sandbox with:

failures:

---- infra::network::dj::in_tui::tests::a_refill_that_queues_nothing_says_so_rather_than_going_quiet stdout ----

thread 'infra::network::dj::in_tui::tests::a_refill_that_queues_nothing_says_so_rather_than_going_quiet' (12050) panicked at src/infra/network/dj.rs:1154:7:
["DJ error (agent CLI): could not run `/build/spotatui-turn-stub-11488/say-only`. Is it installed and on PATH? (behavior.dj_agent_command)"]
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace


failures:
    infra::network::dj::in_tui::tests::a_refill_that_queues_nothing_says_so_rather_than_going_quiet

test result: FAILED. 952 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.78s

To Reproduce
Attempt to build this Nix expression, which is a candidate for the package for 0.41.0 in nixpkgs (which I maintain). The test only fails with withAiDj = true, which has been newly added as an argument to the Nix package to support the new feature.

{
  lib,
  rustPlatform,
  fetchFromGitHub,
  nix-update-script,
  pkg-config,
  alsa-lib,
  openssl,
  pipewire,

  withPipewireVisualizer ? true,
  withAiDj ? true,
  withMCPServer ? false,
}:
rustPlatform.buildRustPackage (finalAttrs: {
  pname = "spotatui";
  version = "0.41.0";

  src = fetchFromGitHub {
    owner = "LargeModGames";
    repo = "spotatui";
    tag = "v${finalAttrs.version}";
    hash = "sha256-uTNrynFPVQibgt4pBVvPLbxN4EFdAC7ezZ91GftSHac=";
  };

  cargoHash = "sha256-X2xyEN43jwT6xr3iACLdvuOaH0SQdtxeJBBP1rEhy80=";

  nativeBuildInputs = [ pkg-config ] ++ lib.optional withPipewireVisualizer rustPlatform.bindgenHook;

  buildInputs = [
    alsa-lib
    openssl
  ]
  ++ lib.optional withPipewireVisualizer pipewire;

  buildNoDefaultFeatures = true;
  buildFeatures = [
    "cover-art"
    "discord-rpc"
    "mpris"
    "streaming"
    "telemetry"
  ]
  ++ lib.optional withAiDj "ai-dj"
  ++ lib.optional withPipewireVisualizer "audio-viz"
  ++ lib.optional withMCPServer "mcp-server";

  passthru.updateScript = nix-update-script { };

  meta = {
    description = "Fully standalone Spotify client for the terminal";
    homepage = "https://github.com/LargeModGames/spotatui";
    changelog = "https://github.com/LargeModGames/spotatui/releases/tag/v${finalAttrs.version}";
    license = lib.licenses.mit;
    maintainers = [ lib.maintainers.lordmzte ];
    mainProgram = "spotatui";

    # macOS is supported by upstream, but the package maintainer has no way to test this.
    platforms = lib.platforms.linux;
  };
})

Expected behavior
Tests pass with ai-dj enabled.

Desktop (please complete the following information):

  • OS: Linux, NixOS
  • Terminal foot
  • Version 0.41.0

Additional context
Full Log: https://gist.github.com/LordMZTE/2abb1f42e40746f932c266b05cb3dc5a

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions