linux - 在 quilt/dquilt 补丁 : patch applies correctly by hand, 中添加一个文件,但会破坏 debuild

标签 linux ubuntu debian quilt

我正在尝试向 Debian 软件包添加补丁(在运行 Ubuntu 14.10“Trusty”的 amd64 机器上)。

在解决问题时,我已将补丁缩减为只添加一个文件。 (为了上下文,这个文件修改了一个 fluxbox 包,所以它也创建了一个带有调试符号的 fluxbox-dbg 文件。)

我按照以下步骤创建了补丁:

  • (确保我应用了所有现有补丁。)
  • 被新添加的 add-dbg-package.patch
  • 添加 debian/rules.d/70-debug-symbols.mk
  • (用我想要的内容创建了那个文件。)
  • 被子刷新

补丁看起来不错:

  • 应用所有补丁后,文件存在且内容正确。
  • 补丁包含一个增量,它添加了文件的完整内容,没有其他内容。
  • 没有其他补丁引用该文件。
  • 当我弹出新补丁时,文件被删除;当我再次按下它时,它会重新创建。

但是,当我尝试使用 debuild 重建包时,我得到了这个:

The next patch would create the file debian/rules.d/70-debug-symbols.mk, which already exists!  Skipping patch.
1 out of 1 hunk ignored
dpkg-source: info: the patch has fuzz which is not allowed, or is malformed
dpkg-source: info: if patch 'add-dbg-package.patch' is correctly applied by quilt, use 'quilt refresh' to update it

如果我接受它的建议,quilt 会告诉我补丁是最新的(看起来是)。 quilt diff 告诉我没有变化。

有人认为:为 Debian 控制文件的更改添加 quilt 补丁是不正确的吗?

谁能帮我理解我做了什么冒犯debuild

最佳答案

你不应该在 /debian/ 文件上添加被子补丁。补丁仅用于代码。只需更改 debian/rules.d/70-debug-symbols.mk 文件并构建包。

Debian/Ubuntu policy说:

The program quilt offers a basic method for recording modifications to the *upstream source* for Debian packaging.

关于linux - 在 quilt/dquilt 补丁 : patch applies correctly by hand, 中添加一个文件,但会破坏 debuild,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29634868/

相关文章:

linux - WGET 后运行 bash 脚本会忽略读取用户输入

MySQL 服务不再启动

PHP 在运行时显示结果

java - Libgdx 无法为目标 linux 32 位加载共享库 gdx freetype,我该如何解决?

linux - 如何记录进程/文件的所有内存访问?

ruby - 无法在 Ubuntu 中成功安装带有 Ruby 支持的 Vim

java - 复制到全局剪贴板不适用于 Ubuntu 中的 Java

linux - mobaXterm 如何知道 x11 转发是否在远程服务器上工作?

regex - Vim - E488 错误 - 搜索和替换命令中的尾随字符

c++ - 需要具有以下功能的 bluez API 的替代方案