一个将 Arch Linux PKGBUILD(存储库和 AUR)转换为 DEB 包并将其安装在 Debian / Ubuntu 上的新项目

Arch Linux 存储库非常广泛,通常包含最新的软件。此外,如果存储库中没有可用的东西,它可能在 AUR(Arch Linux 用户存储库)中可用。

如果您可以将包从 Arch Linux 存储库和 AUR 转换为 DEB 包,并在 Debian / Ubuntu 和基于它们的 Linux 发行版(Pop!_OS、Linux Mint 等)上使用 APT 轻松安装它会怎么样?

嗯,你是一种罐头。 makedeb、mpm 和 makedeb-db 只是一组使之成为可能的工具。这是他们正在做的事情:

  • makedeb 创建一个可以使用 APT 从 Arch Linux PK BUILD 文件安装的 Debian 包
  • mpm 是 makedeb 的包管理器,可用于 Debian 和基于 Debian 的 Linux 发行版,以从 AUR 和 Arch Linux 存储库安装、更新和复制包。
  • makedeb-db 将 Arch Linux 依赖名称转换为相应的 Debian

为什么“你可以做某种事情”?该项目仍处于起步阶段,这些工具的稳定版本(和 alpha 版本)可供下载,但只有少数 Arch Linux 软件包可以安装在 Debian / Ubuntu 上。可能还有其他的工作,但没有一个我试过(除了那些我说的工作)。

因此,尚无法使用完整的 Arch Linux 存储库和 AUR 在 Debian 或 Ubuntu 上安装软件包。但是如果你喜欢这个,你可以帮助开发人员使它在许多其他包中工作。有关更多信息,请参阅此错误报告。

[[Update]]开发人员还为 Debian 创建了一个新的 Debian 用户存储库,类似于 Arch Linux AUR。你可以在这里找到它。

在此之前,您可以使用 Archbox 之类的工具将软件从 Arch Linux 安装到使用 chroot 环境的其他 Linux 发行版。 使用 Archbox 比这复杂得多。事实上,makedeb 的开发者本可以在 Archbox 的启发下做到这一点(想想看,makedeb 文档并没有提到 Archbox)。

安装使用

要在基于它们的 Debian、Ubuntu 和 Linux 发行版(Linux Mint、Pop!_OS 等)上安装 makedeb、mpm、makedeb-db,首先添加存储库并更新软件源。

sudo wget 'https://hunterwittenborn.com/keys/apt.asc' -O /etc/apt/trusted.gpg.d/hwittenborn.asc

echo 'deb [arch=all] https://repo.hunterwittenborn.com/debian/makedeb any main' | sudo tee /etc/apt/sources.list.d/makedeb.list

sudo apt update

然后安装 makedeb、mpm 和 makedeb-db 的稳定版本。

sudo apt install mpm makedeb makedeb-db

稳定版只支持 AUR。 要支持 Arch Linux 存储库,您需要安装 mpm 和 makedeb(mpm-alpha 和 makedeb-alpha)的 alpha 版本。

开发人员表示,在 alpha 版本中,“有时会出现问题,您需要知道在发生这种情况时如何绕过系统。”同样重要的是,mpm-alpha 无法识别使用非 alpha 版本的 mpm 安装的软件包,您需要重新注册这些软件包。 mpm install..

mpm 包管理器支持以下选项:

  • search 搜索包
  • clone 克隆包
  • install 安装包
  • update 更新已安装的软件包(“update”在 Debian 中会做其他事情,因此建议使用“upgrade”而不是“update”以避免混淆用户)

作为测试,安装后您可以转换 matcha-gtk-theme 将 AUR 包发送到 DEB 并使用以下命令安装它:

mpm install matcha-gtk-theme

或者,如果你想直接从 PKGBUILD 创建一个 DEB 包而不使用 mpm 包管理器,你可以使用 make deb 创建它。 只需下载 PKGBUILD,在保存 PKGBUILD 文件的文件夹中打开一个终端,然后运行它。 makedeb 在终端。 您还可以指定 PKGBUILD -F 选择一个选项并在创建后安装 DEB。 -I..

重要提示:不要运行 mpm sudo!!

想从 Arch Linux 上的 Arch Linux PGKBUILD 文件创建 DEB 包吗? 你也可以通过从 AUR 安装 makedeb 来做到这一点。 α。

通过 r/archlinux