Alpine apk:列出所有可用的软件包版本

Posted

技术标签:

【中文标题】Alpine apk:列出所有可用的软件包版本【英文标题】:Alpine apk: List all available package versions 【发布时间】:2020-01-11 00:30:36 【问题描述】:

如何列出 Alpine Linux 上给定软件包的所有可用软件包版本?

我在 apk 帮助中找不到任何有用的信息。

apk info bash 只显示最新的可用 bash 版本。

# apk info bash
bash-5.0.0-r0 description:
The GNU Bourne Again shell

bash-5.0.0-r0 webpage:
https://www.gnu.org/software/bash/bash.html

bash-5.0.0-r0 installed size:
1200128

使用--all 标志我只能获得该版本的一些附加信息:

# apk info --all bash
bash-5.0.0-r0 description:
The GNU Bourne Again shell

bash-5.0.0-r0 webpage:
https://www.gnu.org/software/bash/bash.html

bash-5.0.0-r0 installed size:
1200128

bash-5.0.0-r0 depends on:
/bin/sh
so:libc.musl-x86_64.so.1
so:libreadline.so.8

bash-5.0.0-r0 provides:
cmd:bash

bash-5.0.0-r0 has auto-install rule:

bash-5.0.0-r0 license:
GPL-3.0-or-later

apk listapk list --available 仅列出所有可用软件包的最新版本。 所以如果我运行apk list -a | grep "^bash-\d",我只会得到这个:

# apk list -a | grep "^bash-\d"
bash-5.0.0-r0 x86_64 bash (GPL-3.0-or-later)

【问题讨论】:

【参考方案1】:

该命令列出最新分支的信息,Alpine 管理不同分支中的包版本,例如v3.5, v3.6.... v3.10

apk utility 可以安装来自多个存储库的软件包。这 要检查的存储库列表存储在 /etc/apk/repositories 中,一个 每行存储库。

你可以在这里搜索版本

https://pkgs.alpinelinux.org/packages?name=bash&branch=v3.5

https://pkgs.alpinelinux.org/packages

因此,如果您有兴趣添加版本 bash4.3,则应在添加旧版本或其他分支而不是最新版本时告知分支名称。

apk add  --no-cache --repository http://dl-cdn.alpinelinux.org/alpine/v3.5/main/ bash=4.3.46-r5

所以如果你运行

apk add  --no-cache --repository http://dl-cdn.alpinelinux.org/alpine/v3.5/main/ && apk info bash

您将从两个不同的分支获取版本信息。

The GNU Bourne Again shell

bash-4.3.46-r5 webpage:
http://www.gnu.org/software/bash/bash.html

bash-4.3.46-r5 installed size:
700416

bash-5.0.0-r0 description:
The GNU Bourne Again shell

bash-5.0.0-r0 webpage:
https://www.gnu.org/software/bash/bash.html

bash-5.0.0-r0 installed size:
1200128

【讨论】:

但是每个分支似乎只有一个版本。所以我只得到了 9 个版本,而我可能应该得到 100 个。 是的,因为所有次要版本都在同一个分支中

以上是关于Alpine apk:列出所有可用的软件包版本的主要内容,如果未能解决你的问题,请参考以下文章

alpine apk软件管理包常用命令总结

alpine linux怎么安装文件

alpine linux怎么安装软件

Alpine Linux 中的 apk 命令讲解

如何列出 conda 可用的软件包版本

基于alpine镜像构建的步骤