如何打包包含需要位于 $PATH 中的二进制文件的应用程序?

如何打包包含需要位于 $PATH 中的二进制文件的应用程序?

我正在打包一个应用程序,其中包含通常会进入的二进制文件/usr/bin和会进入的共享库/usr/lib

但是,向软件中心提交应用程序的软件包指南建议二进制文件应该进入/opt

/opt将这些文件放入但又确保它们在中的正确方法是什么$PATH


为了澄清起见,我指的页面在这里:http://developer.ubuntu.com/publish/my-apps-packages/其中指出:

“能够安装到/opt/....”

答案1

提交给 extras.ubuntu.com 的软件包无法安装旨在从默认位置访问的二进制文件$PATH- 它们旨在成为相对轻量级的 GUI 应用程序。这不包括将 Upstart 服务或其他文件安装到 /etc 中。

在编写 ARB 流程时,出于安全原因对文件进行了限制。

对于此类应用程序,您仍然可以将它们提交到 Ubuntu 档案(主要、宇宙)并请求反向移植到稳定版本。

答案2

背景

您能否提供更多信息 - “软件包指南建议二进制文件应该进入/opt”?

我认为 Debian 和基于 Debian 的 Linux 不使用 /opt 目录。根据 LinuxFilesystemTreeOverview /1/:

“/opt 可用于存储系统的附加软件,这些软件不由包管理器处理。”

链接

如果您想使用 /opt,您可以创建符号链接 /2/、/3/、/4/ 到 /usr/bin 等。

例子

Neon 项目 /5/ 正在将 Amarok 和 KDE 的开发版本打包到 /opt,以便它们可以与稳定版本一起使用。

Neon 有一个 ppa /6/,因此您可以下载源包并检查它们。

链接:

  1. https://help.ubuntu.com/community/LinuxFilesystemTreeOverview
  2. http://forums.debian.net/viewtopic.php?f=19&t=45964
  3. http://man.he.net/man1/dh_link
  4. https://wiki.ubuntu.com/PackagingGuide
  5. https://wiki.kubuntu.org/Kubuntu/ProjectNeon/
  6. https://launchpad.net/~neon/+archive/ppa

- 编辑 -

读后感http://developer.ubuntu.com/publish/my-apps-packages/

“能够安装到/opt/”

只是意味着源应该从 /opt/ 运行。如果您使用完整路径调用它,它不在 $PATH 中。

这里将 Amarok 的开发版本安装在 /opt 下,Exec /1/,/2/ 键为:

Exec=/opt/project-neon/bin/amarok %U

在此处输入图片描述

但这只是我的印象!

更多链接

  1. http://specifications.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html
  2. http://specifications.freedesktop.org/desktop-entry-spec/latest/ar01s06.html

相关内容