我想使用常规的Linux打包格式(rpm,deb,yast等)为不同的Linux发行版发布一些软件。我的软件包需要一个click-thru许可协议。哪些Linux工具和软件包格式支持在安装软件之前向用户显示的软件包中的许可证?
答案 0 :(得分:4)
.deb肯定会;来自Debian非sun的sun-java *包有一个。
请记住,在Linux(和其他Unix系统)上,管理员通常会安装软件,但不同的人实际上会使用它。您可能希望在每个用户第一次运行软件时显示您的点击许可证。
(嗯,实际上,dpkg是基于文本的,所以它不是点击 - 通过,而是通过类型直通,但是......)
答案 1 :(得分:3)
正如derobert所说,在Unixy系统上,安装软件通常不是最终用户,因此要求安装人员/管理员同意许可证可能不是您想要的(取决于软件的目的和许可证)文字,我猜)。
点击(或收缩包装略有不同,但基本上是相同的原则)许可证多年来一直是争论的焦点,因为虽然用户“接受”,但很难证明用户是谁接受许可,并且用户在使用软件之前实际阅读了呈现给他们的内容。
以你的lcoal mom + pop电脑维修店为例来安装/升级Windows;他们通常点击许可页面,这样他们就可以安装捆绑到PC上的所有其他垃圾软件,实际所有者没有机会阅读或同意许可。
值得查看您所在司法辖区内此类许可的合法性以及您打算定位的用户的管辖权。
我也不会依赖包管理来为你做这件事。我肯定会将它作为您的应用程序代码的一部分。你可以为几乎所有的包管理器获得一个安装后脚本,以便在需要时运行点击程序,但我认为最好以每用户身份运行它。
答案 2 :(得分:0)
不应使用RPM的安装脚本来提示问题,因为它无法保证代码在脚本中运行。 (它可以从GUI安装,人们也不希望脚本在大型安装事务中暂停)。您可以命名RPM使用的许可协议,并在首次运行时或从其dowwnload站点或通过在说明中添加注释将其显示给用户。
答案 3 :(得分:0)
您可能不希望通过打包机制这样做,但无法保证点击。您可能会考虑的是在第一次运行应用程序时提供此类许可证。不要依赖基于curses的窗口提示,一些软件包安装程序只是将它们重定向,你的安装将永远挂起。
一些应用程序现在这样做是为了宣称商标政策,其他应用程序则更深入。大多数Linux用户都像EULA协议一样不,但我猜测安装软件的任何人都会期待一个。