Skip to content

/yt-dlp: 1: Syntax error: "&&" unexpected #64

Description

@LolGamer1210

Issue Report: yt-dlp fails to run on ARM64 after auto-update

🇬🇧 English Version

Title
yt-dlp fails to run on ARM64 after auto-update (Exec format error / "&&" unexpected)

Description
When running the Discord music bot on ARM64 (Raspberry Pi OS), the yt-dlp binary downloaded via auto-update cannot be executed and produces the following errors:

/home/.../yt-dlp: 1: Syntax error: "&&" unexpected

Steps to Reproduce

  1. Run java -jar JMusicBot-0.11.0-All.jar
  2. Bot startup triggers yt-dlp auto-update
  3. The downloaded binary fails to run on ARM64 with the errors above

Expected Behavior

yt-dlp should run normally on ARM64 after auto-update.

Actual Behavior

  • Auto-updated yt-dlp binary is not executable on ARM64.
  • Process fails with Exec format error and "&&" unexpected.

Environment

  • OS: Raspberry Pi OS (ARM64)
  • Java: Oracle JDK 25
  • Bot: JMusicBot v0.11.0

Additional Notes

  • Manually downloading yt-dlp_linux_aarch64 resolves the issue.
  • The problem seems to be that the auto-update mechanism does not fetch the ARM64-compatible binary.

Suggested Fix

  • Update the auto-update mechanism to detect CPU architecture and fetch the correct binary (e.g., yt-dlp_linux_aarch64 for ARM64).
  • Alternatively, provide a configuration option allowing users to specify a custom yt-dlp path.

🇯🇵 日本語版 (翻訳は Microsoft Copilot によるものです)

タイトル
ARM64 環境で yt-dlp が自動更新後に動作しない問題 (Exec format error / "&&" unexpected)

内容
Discord 音楽ボットを ARM64 (Raspberry Pi OS) 上で起動すると、yt-dlp が自動更新によって取得されたバイナリが実行できず、以下のエラーが発生します。

/home/.../yt-dlp: 1: Syntax error: "&&" unexpected

再現手順

  1. java -jar JMusicBot-0.11.0-All.jar を実行
  2. 起動時に yt-dlp の自動更新が開始
  3. ARM64 環境で取得されたバイナリを実行すると上記のエラーが発生

期待される動作

ARM64 環境でも yt-dlp が正常に実行されること。

実際の動作

  • 自動更新で取得された yt-dlp バイナリは ARM64 環境で動作せず、Exec format error"&&" unexpected エラーが発生。

環境

  • OS: Raspberry Pi OS (ARM64)
  • Java: Oracle JDK 25
  • Bot: JMusicBot v0.11.0

補足

  • 手動で yt-dlp_linux_aarch64 をダウンロードして設置すると正常に動作しました。
  • 問題は自動更新機能が ARM64 用バイナリを取得していない点にあると思われます。

提案される修正

  • 自動更新機能で CPU アーキテクチャを検出し、ARM64 環境では yt-dlp_linux_aarch64 を取得するようにしてください。
  • あるいは、ユーザーが yt-dlp のパスを手動で指定できる設定項目を追加してください。

Note: The Japanese translation was provided by Microsoft Copilot to assist communication. Please refer to the English version if any misunderstandings arise.

Metadata

Metadata

Assignees

Labels

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions