有很多软件以 shell 安装程序的形式发布,例如:
网豆
数学
Bazel(它还提供 deb 和 tar.gz,但 .sh 更流行)
Nvidia 显卡驱动程序
等等。
这种安装软件的方式方便且通用。
类Unix平台上有没有一个工具(如Windows中的NSYS和Inno Setup生成.exe安装程序)可以自动生成.sh安装程序,其中包含目标软件的存档并进行简单的配置?
我更喜欢开源解决方案。
答案1
我不确定安装程序是否特别方便(与发行版的本机包相比)。但是有一个工具可以满足您的需求,Mojo设置,它会生成一个 shell 脚本,其中包含要安装的存档和安装程序本身。
答案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
即可)。