UNIX用の.shインストーラ(.shプレーンテキストファイルに添付されたソフトウェアアーカイブ)を生成するツールはありますか?

UNIX用の.shインストーラ(.shプレーンテキストファイルに添付されたソフトウェアアーカイブ)を生成するツールはありますか?

シェルインストーラとして配布される多くのソフトウェアがあります。たとえば、次のようになります。

  • インターネット豆

  • 数学

  • Bazel(debとtar.gzも提供していますが、.shがもっと使われています)

  • Nvidiaグラフィックドライバ

など。

これらのソフトウェアのインストール方法は便利で多様です。

ターゲットソフトウェアのアーカイブを含み、単純な構成を実行する.shインストーラを自動的に生成できるUnixファミリープラットフォーム(たとえば、.exeインストーラを生成するWindowsのNSYSおよびInno Setup)にツールはありますか?

私はオープンソースのソリューションを好む。

答え1

インストーラが特に便利かどうかはわかりません(配布版の基本パッケージと比較して)。しかし、あなたのニーズに合ったツールがあります。模造設定、インストールするアーカイブとインストーラ自体を含むシェルスクリプトを生成します。

答え2

これは.shインストーラを構築するためのより強力なツールです(他の種類のパッケージをビルドしたり、異なる形式のパッケージ間で変換したりすることもできます)。

fpmです。ここGitHubのホームページです。

インストールは難しくありません:

On OSX/macOS:

brew install gnu-tar

On Red Hat systems (Fedora 22 or older, CentOS, etc):

yum install ruby-devel gcc make rpm-build rubygems

On Fedora 23 or newer:

dnf install ruby-devel gcc make rpm-build libffi-devel

On Debian-derived systems (Debian, Ubuntu, etc):

apt-get install ruby ruby-dev rubygems build-essential

また、ユーザーフレンドリーです(入力するだけですfpm --help)。

関連情報