Ubuntu で Orca を使う

ADE(Agent Development Environment) と謳っている Orca を使ってみました。

環境

  • Ubuntu 24.04

ダウンロード

以下から Linux 用の AppImage をダウンロードします。

実行手順

実行権限を与えて実行するだけです。

chmod +x orca-linux.AppImage
./orca-linux.AppImage

エラーがでた場合

私の環境では以下のエラーが出ました。

libfuse2 がない

エラー内容は以下です。

dlopen(): error loading libfuse.so.2

AppImages require FUSE to run. 
You might still be able to extract the contents of this AppImage 
if you run it with the --appimage-extract option. 
See https://github.com/AppImage/AppImageKit/wiki/FUSE 
for more information

libfuse2 が必要みたいなので、以下で追加しました。

sudo add-apt-repository universe
sudo apt update
sudo apt install libfuse2

chrome-sandbox の権限エラー

[40727:0718/110452.982911:FATAL:sandbox/linux/suid/client/setuid_sandbox_host.cc:166] The SUID sandbox helper binary was found, but is not configured correctly. Rather than run without sandboxing I'm aborting now. You need to make sure that /tmp/.mount_orca-lhdNQH6/chrome-sandbox is owned by root and has mode 4755.
Trace/breakpoint trap (コアダンプ)

--no-sandbox をつければとりあえず起動できます。

./orca-linux.AppImage --no-sandbox

原因

Electron製のOrcaは、内部のChromiumプロセスを隔離するため、Linuxでは主に次のいずれかのsandbox方式を使います。

  1. user namespace sandbox 一般ユーザー権限のままLinux namespaceを作成する方式
  2. SUID sandbox chrome-sandbox をroot所有・権限4755で実行する方式

Ubuntu 22.04では1のuser namespace方式がそのまま利用できたため、AppImage内のchrome-sandboxがSUID設定されていなくても起動できました。

Ubuntu 24.04ではAppArmorによる以下の制限が既定で有効になっています。

kernel.apparmor_restrict_unprivileged_userns=1

これによりOrcaがuser namespace sandboxを作れずエラーになります。

制限をUbuntu 22.04相当に戻す方法もありますが、システム上の全アプリケーションに対して非特権user namespaceの制限を解除することになります。

とりあえずは Orca 側の対応待ちという感じです。


以上で無事起動しました。
使い方などは気が向いたらまた別途。