macOS に入れる
macOS には、ターミナルのコマンドで入れる方法と、.dmg をブラウザーで取ってきて入れる方法があります。コマンドで入れた場合は、初回起動で Gatekeeper の確認画面を経由しません。
どちらの方法でも、USB ドライバの追加は不要です。Airspy の native 接続には libairspy を入れます。Pluto などには SoapySDR を入れます。
ターミナルで入れる
ターミナルで次のコマンドを実行します。
curl -fsSL https://jrd.linux.moe/install.sh | sh
このコマンドは次のように動きます。
- この Mac のアーキテクチャ(Apple Silicon か Intel か)に合う最新版を取ります。
- SHA-256 を照合してから
/Applications/JR-D Receiver.appに入れます。/Applicationsに書き込めないときは~/Applicationsに入れます。 - 既に入っていれば入れ替えます。
minisignが入っていれば、アプリの更新と同じ公開鍵で署名も検証します。
curl で取ったファイルには隔離属性が付きません。そのため、初回起動で Gatekeeper の確認画面を経由しません。
ブラウザーで入れる
- 製品サイトのダウンロード欄から、Apple Silicon なら
JR-D.Receiver_<版>_aarch64.dmg、Intel ならJR-D.Receiver_<版>_x64.dmgを取ってきます。 .dmgを開き、アプリを「アプリケーション」へ入れます。
初回起動が Gatekeeper に止められたとき
配布版は Apple の署名と公証をしていないため、ブラウザーで取ってきた場合は初回起動が Gatekeeper に止められます。次のどちらかの操作で開きます。
- アプリを右クリックして「開く」を選ぶ
- システム設定 → プライバシーとセキュリティで「このまま開く」を押す
それでも開けない場合は、次のコマンドで隔離属性を外します。
xattr -dr com.apple.quarantine "/Applications/JR-D Receiver.app"
SoapySDR を入れる(Airspy、Pluto などを使う場合)
RTL-SDR と HackRF One は、追加の導入なしで使えます。Airspy の native 接続には libairspy を使います。ADALM-Pluto などの機種、または Airspy を SoapySDR 経由で使う場合は、SoapySDR と機種ごとのモジュールを Homebrew で入れます。これらの機種は実機での確認をしていません。動作の報告を受け付けています。
brew install soapysdr
brew tap pothosware/pothos
brew install pothosware/pothos/soapyairspy # Airspy を使う場合
brew install pothosware/pothos/soapyplutosdr # Pluto を使う場合
soapyairspy と soapyplutosdr は homebrew-core になく、pothosware/pothos の tap にあります(formula の存在は確かめましたが、この手順での導入は試していません)。入ったかどうかは、機種をつないだ状態で次のコマンドを実行して確かめます。
SoapySDRUtil --find
機種が表示されれば、アプリの設定画面の「デバイス」にも出ます。アプリが SoapySDR を探すのは、/opt/homebrew/lib(Apple Silicon の Homebrew)と /usr/local/lib(Intel の Homebrew)だけです。MacPorts など Homebrew 以外の場所に入れたときは、環境変数 JRD_SOAPY_LIB に libSoapySDR.0.8.dylib のフルパスを設定します。相対パスは使えません。Dock やアプリケーションフォルダから起動するアプリには、シェルの環境変数が渡りません。次のコマンドで設定してから、アプリを起動し直します。
launchctl setenv JRD_SOAPY_LIB /opt/local/lib/libSoapySDR.0.8.dylib
対応する SoapySDR は 0.8 系です。他の版は読み込めません。
入れたあとに行うこと
- ライセンスを認証する
- 最初の設定で無線機とプリセットを選ぶ