在 HDD 上设置构建环境

来自 Alpine Linux

系统磁盘模式安装 Alpine Linux,即传统或经典硬盘安装,用作构建环境。 配置桌面,以便开发系统也可以用作日常使用,如果需要。

如果现有的 Alpine Linux 安装是稳定版本,请升级到 edge 分支以用作构建环境。

另一种方法是在另一个系统内设置一个干净的 Alpine Linux 构建环境,使用 chroot 或某种形式的虚拟化。 主机系统也可以是 Alpine Linux,或者可以是其他系统。

升级到 edge 分支

将 Alpine Linux 从稳定版本升级到滚动开发版本 edge 分支基本上需要与升级到最新版本相同的步骤。

关键的区别在于,在编辑 /etc/apk/repositories 文件时,其中所有引用的仓库版本(例如 v3.21latest-stable)都需要指向 edge

当使用 edge 分支时,如果需要的软件包仅在 testing 仓库中可用,则可以添加 testing 仓库。

注意: 请记住,testing 仓库中的软件包没有支持。


/etc/apk/repositories 的内容

#/media/cdrom/apks http://dl-cdn.alpinelinux.org/alpine/edge/main http://dl-cdn.alpinelinux.org/alpine/edge/community http://dl-cdn.alpinelinux.org/alpine/edge/testing

升级到 edge 分支后,可以使用以下命令检查当前安装的 edge 版本

$ cat /etc/alpine-release

并参考附加到版本的构建日期。

警告: 不要同时启用稳定和 edge 仓库。这可能会破坏你的系统。请使用 edge 分支稳定分支。如果混合使用稳定和 edge 仓库,后果自负。


设置你的系统和账户

alpine-sdk 是一个元软件包,它拉取用于构建新软件包的最基本软件包。 还需要安装和配置提升权限的方法,例如 sudo 或 doas,以及编辑器,例如 vi、nano、micro。

# apk add alpine-sdk

现在是为您创建一个普通用户帐户以便工作的好时机。 为了以后更轻松,最好将此用户添加到 wheel 组;现在可以使用 sudo 或 doas 完成需要超级用户权限的操作。

aports 树在 git 中,所以在克隆它之前,让我们配置 git。

配置你的全局 git 配置

在 git 中配置你的姓名和电子邮件地址。此姓名和电子邮件地址将显示在你所有的提交中

$ git config --global user.name "你的全名" $ git config --global user.email "你的@email.地址"

使用git config不带--global可以让你为特定的 git 仓库配置其他详细信息。

请参考 Development using git 以掌握 Git 操作的基础知识。

配置 abuild

需要为系统和用户配置 Abuild。

根据需求编辑 /etc/abuild.conf 文件。 大多数默认值可以保持不变,除非你正在为自定义平台开发,在这种情况下,文件中的注释应该会指导你。 唯一需要编辑的字段是 PACKAGER,这样你就可以因创建的软件包而获得功劳(或责备)。

为了使用 abuild 命令,执行 abuild 的用户必须是 abuild 组的成员

# addgroup <你的用户名> abuild

注意: 记住注销并重新登录以使组更改生效。

对于 abuild,需要公钥/私钥 RSA 密钥对。来自 abuild 软件包的 abuild-keygen 命令生成并配置安全密钥。

$ doas abuild-keygen -a -i

abuild-keygen 选项

  • -a 在 abuild.conf 中设置 PACKAGER_PRIVKEY=<生成的密钥>
  • -i 使用 sudo 将公钥安装到 /etc/apk/keys 中
  • -h 显示此帮助
  • -n 非交互式。使用默认值
  • -q 静默模式


贡献

继续创建新软件包为 Alpine Linux 创建并提交补丁