プラグインによるfpmの拡張
目次
プラグインによるfpmの拡張¶
Fortranパッケージマネージャにはプラグインシステムが備わっており,機能を容易に拡張できます.ここでは,プラグインをインストールし,使用する方法を示します.
レジストリ検索ツール¶
fpm-searchプロジェクトはパッケージが登録されているfpmレジストリを照会するためのプラグインです.fpmとともにビルドされているので,以下のように簡単にシステムにインストールできます.
git clone https://github.com/urbanjost/fpm-search
cd fpm-search
fpm install --profile release
fpm-search
のバイナリが~/.local/bin
(Windowsでは%APPDATA%\local\bin
)にインストールされます.
注釈
インストールされたバイナリがPATH
内にあることを確認します.すなわち,次のコマンドを実行します.
which fpm-search
~/.local/bin/fpm-search
バイナリが見つからない場合は,インストールされたディレクトリをパスに追加します.
bashシェルの標準設定は,ホームディレクトリにある.bashrc
で確認できます.以下の手順でPATH
に追加してください.
echo 'export PATH=$PATH:$HOME/.local/bin' >> ~/.bashrc
. ~/.bashrc
.bashrc
を変更した後,.bashrc
を再読込してください.そうしないと,変更が現在のシェルに適用されません.
zshシェルの標準設定はホームディレクトリの.zshrc
で確認できます.下記コマンドを用いてPATH
に追加してください.
echo 'export PATH=$PATH:$HOME/.local/bin' >> ~/.zshrc
exec zsh
.zshrc
を変更した後,zshを再起動してください.そうしないと,変更が現在のシェルに適用されません.
PATH
変数は,コマンドプロンプトからpathmanプログラムを利用して変更できます.
pathman /au %APPDATA%\local\bin
インストールできたので,fpmから新しいプラグインを呼び出すことができます.
❯ fpm search
Downloading registry ... https://github.com/fortran-lang/fpm-registry/raw/master/index.json
...
コマンドには,fpm-search
ではなくfpm search
を用いていることに注意してください.コマンドラインインタフェースを構築するためのパッケージを見つけるには,次のように入力します.
❯ fpm search commandline
M_CLI : Unix-style commandline parsing using a prototype command and NAMELIST (STD:f2008)
M_CLI2 : Unix-style commandline parsing using a prototype command
パッケージを用いるために必要なマニフェストの依存関係の設定内容を,次のコマンドを実行して生成します.
❯ fpm search --toml M_CLI2
M_CLI2 = { git = "https://github.com/urbanjost/M_CLI2" }
この一行をパッケージマニフェストに追加することで,当該のプロジェクトを参照できます.
まとめ
ここでは以下の方法を学びました.
fpmプラグインをインストールする方法
レジストリを照会するためにfpm-searchプラグインを使用する方法
照会結果から依存関係の設定を生成する方法