是否存在通用的跨平台安装程序?

问题描述 投票:0回答:1

我想有人试图为应用程序或安装程序实现创建跨平台安装程序的开放标准吗?这意味着您只需从网站上下载单个文件,它的扩展名可以被任何流行的操作系统识别?我们有用于windows的mac,.msi和普通.exe安装程序的.pkg和.dmg文件,用于linux的.deb软件包(如果是debian),但我们没有针对每个平台的通用(例如.uoi(Universal Open Installer) ), 大声笑)。

有人可能认为这种方法是不可能的,因为每个操作系统都有自己的结构和文件组织,但是这个安装程序可能同时包含每个操作系统的指令,它甚至可能包含共享文件(如图片,纹理或声音),因为它们可以是重用于每个平台,它们与平台无关。

我认为实现这样的安装程序是一个好主意,免费为所有人和开源

installation windows-installer deb msiexec pkg-file
1个回答
2
投票

共享包装格式似乎难以捉摸。但是,有一些可用的多平台部署工具。 Installsite.org has a list towards the bottom here

我猜两种最常用的工具是(都是商业用途):

还有其他一些工具,其中一个是Bitrock InstallBuilder - 我一无所知的工具,所以我既不能推荐也不能解雇它。还有我还没试过的QtInstaller FrameworkSeen people recommend install4j。这是install4j siteWhat are good InstallAnywhere replacements for installing a Java EE application?

然后是Zero Install--一个跨平台的打包和分发软件 - 对我来说是一个未知的领域。和Steam,由Valve开发和维护的跨平台视频游戏发行,许可和社交游戏平台。用于购买,下载,安装,更新,卸载和备份视频游戏。它适用于Windows,OS X和Linux。与Steam相似的是来自Ubisoft的Uplay--另一个视频游戏发行平台。也许应该提到PyInstaller? (跨平台Python程序)。

我在Oracle Universal Installer回来时遇到了SO question。适用于Oracle工具的基于Java的安装程序。一个神秘的工具。现在已经弃用的旧版Java Applets,以及即将过时的Java Web Start功能应该被提及为跨平台。开发人员应该在2020年底之前迁移到jlinkOracle PDF: Java Client Roadmap Update)。

在一个真正的答案领域并不多,但有些指针。我一直在重复,说实话,我对这些工具知之甚少。我想最近基于XML / Zip的格式可以比以前的技术更容易跨平台,例如用于MSI安装程序的Windows的COM结构化存储文件。时间会证明。在云的时代,谁知道什么会浮出水面?

但是,我可以告诉您,我一直在努力将多平台安装程序作为企业应用程序打包程序(不开发设置,只是部署它们),而这些多平台安装程序一直存在问题需要处理。非常非标准和高惊讶因素有时需要处理。例如:你启动一个setup.exe只启动第二个setup.exe,然后退出报告没有任何明智,所以你不知道实际安装发生了什么异步。那种东西。因此,您必须编写奇怪的脚本来检查安装进度等...处理多平台安装程序从未如此有趣。


一些链接:

© www.soinside.com 2019 - 2024. All rights reserved.