重命名自定义 deb 包

重命名自定义 deb 包

如何重命名可以上传到 reprepro 的 .deb 包?

例如,我有一个 deb 包example-latest.deb,它是最新版本,我创建了一个自定义存储库,以便用户可以从那里下载它,但现有的 ubuntu 存储库中有多个同名的包。因此,基本上我想将其重命名example-latest.deb为类似这样的名字myname.deb,以便使用我的存储库的用户可以通过键入来安装包apt install myname

从 deb 包中,我运行了以下命令:

changestool myname.changes adddeb myname.deb
changestool myname.changes setdistribution ubuntu
gpg --clearsign myname.changes

在查看 myname.changes 后,我发现包的名称类似于example_2.5.1_all.deb,这使我无法上传它。我可以重命名文件以符合此要求,但实际上我什么也没做。

有人知道重命名文件的最佳方法是什么吗?

答案1

首先,您需要将 .deb 解压到临时目录 (tmpdir)。

dpkg-deb -x example-latest.deb tmpdir

然后我们将拉取位于 tmpdir/DEBIAN/ 文件夹中的控制文件。您将在这里进行依赖项更改。

cd tmpdir
dpkg-deb --control example-latest.deb 

编辑 tmpdir/DEBIAN/control 文件

vim tmpdir/DEBIAN/control

更改包名称:

packages: myname

编辑控制文件后,您需要使用此命令重新打包.deb。

dpkg -b tmpdir new-name-of-package.deb

安装软件包然后你可以运行

dpkg -i new-name-of-package.deb
apt install myname

来源:https://forums.linuxmint.com/viewtopic.php?t=35136

相关内容