Mac OS で Maxima を使うのに単純に Homebrew とかでインストールしてもうまくいかないことが多い. そのためビルドする必要があるが, 環境構築とかがいろいろ必要になって面倒なので docker でまるまるパッケージした.
環境
- Docker version 20.10.5, build 55c4c88
- XQuarz 2.8.1 (xorg-server 1.20.11)
構築
Dockerfile とかは以下.
wxMaxima on docker - gist.github.com
Dockerfile 内でやることは大まかに3つ.
あとこっそり gnuplot と fonts-jsmath
を apt で入れている.
タグつけてイメージビルド.
$ docker build -t maxima-docker .
Docker 起動
設定ファイルを拾ってくるために一度起動してみる.
$ docker run --rm -e DISPLAY=$(hostname):0 \
-v ~/.Xauthority:/root/.Xauthority \
maxima-docker /usr/bin/wxmaxima

動いた.
画面の設定をしたら, wxMaximaの設定ファイル (/root/.wxMaxima
) を拾ってホストのローカルディレクトリに保存しておく. あとでホスト側から設定ファイルをマウントしたときに上書きできないとエラーが出るがとりあえず無視.
docker を起動するスクリプトを用意.
#!/bin/bash
/usr/local/bin/docker run --rm -e DISPLAY=$(hostname):0 \
-v ~/.Xauthority:/root/.Xauthority \
-v ~/.wxMaxima:/root/.wxMaxima \
-v $(pwd):/mnt \
maxima-docker /usr/bin/wxmaxima
あとで Automator に登録するときにPATHが通らないので docker の指定は絶対パスで指定する. -v $(pwd):/mnt
だと Automator ではトップ (/
) になるので, 好みで設定する.
Automator 登録
参考をもとに[3], Automator に登録. .app
を /Applications
に保存すると launchpad からも起動できるようになる.

参考
[1] maxima-docker/Dockerfile.debian at master · jgoldfar/maxima-docker
[2] docker-wxmaxima/Dockerfile at master · wxMaxima-developers/docker-wxmaxima
0 件のコメント:
コメントを投稿