AURからパッケージをインストールするItamaeのresourceを作った
AUR (Arch User Repository)からパッケージをインストールするItamaeのresourceを作りました。
Usage
次のように書くとrbenvパッケージをAURからインストールします。
aur_package "rbenv"
Arch Linuxの環境をItamaeで構築するのに便利な気がします。
Implementation
実装はItamaeのpackage resourceを大きく参考にしています。
基本的にpackage resourceの実装をベースに、パッケージのインストール部分だけをAURから行うように変えています。
また、yay
がインストールされていればそれを使い、インストールされていなければmakepkg
を使う実装になっています。
Link
実装の際には id:sue445 さんのItamae pluginを参考にしていました。
具体的には一番上に書かれていた https://github.com/sue445/itamae-plugin-resource-encrypted_remote_file とかを見ていました。
Itamae pluginを作る上では、
- gem名
- テストの方法
- Docker + Serverspecを使った
- gemspecでのバージョンの書き方
- 普通にやるとgemspecでItamaeをrequireする必要が出てくる
- めんどいので、
VERSION
定数を使わずにgemspecにバージョンをベタ書きするようにした(sue445さんのプラグインと同じ方法)
など、色々気をつける点があり、とても参考になりました。ありがとうございました🙏