问题标签 [debian-packaging]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
61 浏览

python - 将 python virtualenv 创建到 /usr/share/ 是否安全?

我一直在为我的项目构建 debian 包。

当用户安装我的包时,我的项目的二进制文件安装在/usr/bin/*. 然后,在最后调用一个 bash 脚本,该脚本创建 python 虚拟环境/usr/share/my_proejct/venv并在该虚拟环境上安装所需的 python 包。

我的项目的二进制文件正在使用该虚拟环境的 python。

  1. AFAIK,使用 sudo 运行 pip 存在安全问题。但是我只是直接使用 virtualenv 的 python( /usr/share/my_project/venv/bin/python);我仍然virtualenv使用 sudo 安装并venv使用它创建。还危险吗?

  2. 我可以将这个虚拟环境的 python 用于多个用户吗?

0 投票
1 回答
57 浏览

debian-packaging - Debian 软件包文件在重新安装时被删除

最近,我一直在为 debian 包构建我的项目。

我已经制作了 my_project.deb 并且安装得很好。

但是,当我重新安装它时,它不能正常工作。

为了找出我的项目文件在哪里,我编写了维护脚本(preinst、postinst、prerm、postrm)和ls如下文件。

然后,

我做错了什么吗?我想不出这些发生的原因。

0 投票
1 回答
112 浏览

bash - 当使用`.iso`作为debian 10 repo时,`Package''没有安装候选者

阅读有关如何在 debian 系统中使用 iso 作为 repo 的帖子,如123

首先,我从 debian 10 官方网站下载了 3 张 dvd .iso。
然后,

更远,vi /etc/apt/sources.list

apt-get update输出如下:

最后,

.iso用作 debian 10 repo时有什么问题?
提前致谢。

0 投票
0 回答
40 浏览

python - 从 .egg-info 名称中去除 python 版本

我尝试使用 stdeb 从我的 python 项目中创建一个 debian 包,但失败了,因为它不支持自定义更改日志。

正因为如此,我尝试自己使用一个小 shell 脚本来完成,ia 执行该脚本:

python3 setup.py install --install-layout=deb --no-compile --single-version-externally-managed --root="$package"

该脚本能够创建一个 debian 包,但该.egg-info目录名为pyhp_core-2.2-py3.7.egg-info,其中包含与其他包安装不同的 python 版本。

我想知道此更改将如何影响该软件包的用户以及是否可以禁用它。

0 投票
0 回答
109 浏览

python-3.x - 如何将 pybuild 与诗歌一起使用?

我想为我的 python 模块构建一个 debian 包。我使用构建系统诗歌。但pybuild不懂诗。所以我想使用自定义构建系统,就像这里提到的那样。

但是,我收到错误消息: I: pybuild base:217: python3.8 setup.py clean python3.8: can't open file 'setup.py': [Errno 2] No such file or directory E: pybuild pybuild:390: plugin distutils failed: exit code=2: python3.8 setup.py clean 。但是我不使用 distutils 作为系统,所以我无法理解这个问题。

0 投票
0 回答
52 浏览

python-3.x - 如何为 python 模块构建 dep 包?

如果我用终端调用它,我想为 python 模块构建一个基于 debian 的 deb 包并得到一个 ModuleNotFoundError。我创建了一个最小的例子。

目录结构:

rules

control

setup.py

main.py

然后我运行sudo python3 setup.py --command-packages=stdeb.command bdist_deb并安装 deb 包sudo dpkg -i python3-hello

当我运行时,hello我收到此错误消息:

0 投票
1 回答
25 浏览

package - RPM 包文件名语法,与 Debian 的区别

我最近为 Debian(实际上是 Ubuntu 18 和 20)构建了一个可执行文件包。核心内容的 tarball 能够在 Fedora 34 上运行。所以现在我被要求为它创建一个 RPM。

Debian 文件名类似于:

mystuff-sfwrname-edu_21.05-0715.1234-u20_amd64.deb

这对应于 Debian 软件包文件名的name _ version _ arch .deb 语法。下划线是主要分隔符;减号并不重要。(u20表示 Ubuntu 20.04 版本;由于libc问题,还有一个u18Ubuntu 18.04 版本。)

来到 RPM 世界,我发现语法是: name - version - releasearch .rpm,其中减号和最后一个周期很重要。然而,在架构之前的名称和句点中似乎有包名称,例如openssh-clients-7.4p1-16.el7.x86_64带有减号。

然后我可以将我的包裹命名为:

mystuff-sfwrname-edu-21.05-0715.1234.el7.x86-64.rpm

在哪里:

  • name= mystuff-sfwrname-edu(带有多个减号)
  • version=21.05
  • release=0715.1234.el7
  • arch=x86_64

如果我假设相同的 RPM 在 Fedora 34 和 CentOS 7 上工作,我会直接删除el7还是有其他一些我不知道的规则/实践?

0 投票
0 回答
46 浏览

linux - adduser: `/sbin/useradd -d /var/spool/postfix -g postfix -s /usr/sbin/nologin -u 115 postfix' 返回错误码 1. 退出

我正在尝试安装 postfix 以使用 SMTP,但是当我尝试安装它时收到错误消息:

如果我尝试使用dpkg-reconfigure postfix,则输出显示 Postfix 已损坏或未完全安装。

我已尝试使用apt-get -f install, apt remove --purge postfix, apt autocleanapt autoremove然后尝试再次安装,但始终出现错误。

任何帮助,将不胜感激。谢谢

0 投票
1 回答
34 浏览

uninstallation - 由于来自另一个软件包的冲突,dpkg 安装失败

我使用 dpkg-deb 工具构建了 2 个 debian 软件包(abc.deb 和 xyz.deb)。它们的目录结构是: pkg1: /opt/pqr/xyz pkg2: /opt/pqr/abc

两者共享一个依赖 pkg (oss.deb),它也安装在 /opt/pqr 下:/opt/pqr/oss

目的是将我所有的包都放在 /opt/pqr 下

我面临的问题是: Step1: install oss.deb 这导致:​​/opt/pqr/oss

步骤2:使用 dpkg -i abc.deb 安装 abc.deb 这将导致:

第三步:安装 xyz.deb 这一步是替换/删除 abc.deb 并安装 xyz 导致:

我在第 3 步结束时的期望:

我认为由于 /opt/pqr 路径是在安装过程中使用这两个软件包创建的,因此 dpkg 也在尝试删除它们。有没有办法解决这个问题,我只能在 dpkg -r abc.deb 期间删除 /opt/pqr/abc 并在 dpkg -r xyz.deb 期间同样只删除 /opt/pqr/xyz ?

0 投票
1 回答
60 浏览

debhelper - 如何在 debhelper dh_gencontrol 中使用变量?

我试图在构建过程中将数据附加到 Debian 包的描述中。所需的数据存储在debian/rules文件中声明的常量中。

我已经覆盖dh_gencontrol并添加@printf了格式化数据的调用。

我遇到的问题与包含空格的字符串有关:

  1. printf拆分给定的字符串,将每个单词匹配到一个%s实例。我希望它改用整个字符串。
  2. 如何操作所述字符串,用空格替换空格_并将其添加到同一行?

相关部分来自debian/rules


预期输出:


实际输出: