Support bpf-linker (#1950)

This commit is contained in:
Taiki Endo
2026-07-23 22:13:22 +09:00
committed by GitHub
parent 05a01b63a2
commit 20d0440ac8
6 changed files with 98 additions and 7 deletions
+2 -1
View File
@@ -10,8 +10,8 @@ cyclonedx
cygdrive
deadlinks
deepsource
docgarden
doas
docgarden
enablerepo
epel
espup
@@ -40,6 +40,7 @@ SHASUMS
sigstore
syft
tombi
tzst
udeps
USERPROFILE
wasmtime
+1
View File
@@ -16,6 +16,7 @@ See the [Supported tools section in README.md](README.md#supported-tools) for ho
| ---- | -------------------------------- | ------------------------------- | ------------------ | ------- | ---- |
| [**auto-doc**](https://github.com/tj-actions/auto-doc) | `$HOME/.install-action/bin` | [GitHub Releases](https://github.com/tj-actions/auto-doc/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/tj-actions/auto-doc/blob/main/LICENSE) | |
| [**biome**](https://biomejs.dev) | `$HOME/.install-action/bin` | [GitHub Releases](https://github.com/biomejs/biome/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/biomejs/biome/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/biomejs/biome/blob/main/LICENSE-MIT) | |
| [**bpf-linker**](https://github.com/aya-rs/bpf-linker) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/aya-rs/bpf-linker/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/aya-rs/bpf-linker/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/aya-rs/bpf-linker/blob/main/LICENSE-MIT) | |
| [**cargo-about**](https://github.com/EmbarkStudios/cargo-about) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/EmbarkStudios/cargo-about/releases) | Linux, macOS, Windows | [MIT](https://github.com/EmbarkStudios/cargo-about/blob/main/LICENSE-MIT) OR [Apache-2.0](https://github.com/EmbarkStudios/cargo-about/blob/main/LICENSE-APACHE) | |
| [**cargo-apple-runner**](https://github.com/madsmtm/cargo-apple-runner) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/madsmtm/cargo-apple-runner/releases) | macOS | [Zlib](https://github.com/madsmtm/cargo-apple-runner/blob/main/LICENSE-ZLIB.txt) OR [Apache-2.0](https://github.com/madsmtm/cargo-apple-runner/blob/main/LICENSE-APACHE.txt) OR [MIT](https://github.com/madsmtm/cargo-apple-runner/blob/main/LICENSE-MIT.txt) | |
| [**cargo-audit**](https://github.com/rustsec/rustsec/tree/HEAD/cargo-audit) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/rustsec/rustsec/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/rustsec/rustsec/blob/main/cargo-audit/LICENSE-APACHE) OR [MIT](https://github.com/rustsec/rustsec/blob/main/cargo-audit/LICENSE-MIT) | |
+16 -2
View File
@@ -158,6 +158,18 @@ download_and_extract() {
esac
fi
;;
*.tar.zst | *.tzst)
tar_args+=('xf')
if ! type -P zstd >/dev/null; then
case "${base_distro}" in
debian | fedora | suse | arch | alpine)
printf '::group::Install packages required for installation (zstd)\n'
sys_install zstd
printf '::endgroup::\n'
;;
esac
fi
;;
*.zip)
if ! type -P unzip >/dev/null; then
case "${base_distro}" in
@@ -187,8 +199,10 @@ download_and_extract() {
cd -- "${tmp_dir}"
download_and_checksum "${url}" "${checksum}"
if [[ ${#tar_args[@]} -gt 0 ]]; then
tar_args+=("tmp")
tar "${tar_args[@]}"
case "${url}" in
*.tar.zst | *.tzst) zstd -dc tmp | tar "${tar_args[@]}" - ;;
*) tar "${tar_args[@]}" tmp ;;
esac
for tmp in "${bin_in_archive[@]}"; do
case "${tool}" in
editorconfig-checker) mv -- "${tmp}" "${bin_dir}/${tool}${exe}" ;;
+55
View File
@@ -0,0 +1,55 @@
{
"rust_crate": "bpf-linker",
"template": {
"x86_64_linux_musl": {
"url": "https://github.com/aya-rs/bpf-linker/releases/download/v${version}/bpf-linker-x86_64-unknown-linux-musl.tar.zst"
},
"x86_64_macos": {
"url": "https://github.com/aya-rs/bpf-linker/releases/download/v${version}/bpf-linker-x86_64-apple-darwin.tar.zst"
},
"x86_64_windows": {
"url": "https://github.com/aya-rs/bpf-linker/releases/download/v${version}/bpf-linker-x86_64-pc-windows-gnullvm.tar.zst"
},
"aarch64_linux_musl": {
"url": "https://github.com/aya-rs/bpf-linker/releases/download/v${version}/bpf-linker-aarch64-unknown-linux-musl.tar.zst"
},
"aarch64_macos": {
"url": "https://github.com/aya-rs/bpf-linker/releases/download/v${version}/bpf-linker-aarch64-apple-darwin.tar.zst"
},
"aarch64_windows": {
"url": "https://github.com/aya-rs/bpf-linker/releases/download/v${version}/bpf-linker-aarch64-pc-windows-gnullvm.tar.zst"
}
},
"latest": {
"version": "0.10.4"
},
"0.10": {
"version": "0.10.4"
},
"0.10.4": {
"x86_64_linux_musl": {
"etag": "0x8DECC93D0199F9F",
"hash": "4dda77daab6c5f120a468e6d3ede2498f5bd47ece712172cfb7290176d93d015"
},
"x86_64_macos": {
"etag": "0x8DECC93CE4D2D43",
"hash": "55771c82883b414f3f4e8bd081a182e8deefa1b953ab249c85b253fc2b69de48"
},
"x86_64_windows": {
"etag": "0x8DECC93CF001074",
"hash": "d3e3448333f4dd7e49103071a547ff9a944d6f277b48bdcfe9d9326dca725260"
},
"aarch64_linux_musl": {
"etag": "0x8DECC93CD762FA5",
"hash": "c3638cd3cb735ff85705905a07e0df61c0f9426480334c8e2efe5cb92fd9d3de"
},
"aarch64_macos": {
"etag": "0x8DECC93CC81DECB",
"hash": "7e0c692b2e839afdb3e2f1053bd9a94e55b99f7b6a94ef69990449a6d72837ce"
},
"aarch64_windows": {
"etag": "0x8DECC93CC8D916E",
"hash": "341ea6db58a7d5ac7348d835e86a8da9ef351445704646f9632a4410d89ae60a"
}
}
}
+4 -4
View File
@@ -119,15 +119,15 @@ case "$(uname -s)" in
if ! type -P snap >/dev/null; then
incompat_tools+=(valgrind)
fi
if ! type -P apt-get >/dev/null; then
incompat_tools+=(cyclonedx)
fi
if [[ "${runner}" == 'ubuntu:14.04' ]]; then
if ! type -P apt-get >/dev/null || [[ "${runner}" == 'ubuntu:14.04' ]]; then
incompat_tools+=(cyclonedx)
fi
if [[ "${runner}" == 'almalinux:10'* ]]; then
incompat_tools+=(cargo-deb) # no dpkg in package manager
fi
case "${runner}" in
debian/eol:jessie-slim | ubuntu:14.04 | alpine:3.2) incompat_tools+=(bpf-linker) ;; # no zstd in package manager
esac
;;
Darwin)
host_os=macos
+20
View File
@@ -0,0 +1,20 @@
{
"repository": "https://github.com/aya-rs/bpf-linker",
"license_markdown": "[Apache-2.0](https://github.com/aya-rs/bpf-linker/blob/main/LICENSE-APACHE) OR [MIT](https://github.com/aya-rs/bpf-linker/blob/main/LICENSE-MIT)",
"tag_prefix": "v",
"version_range": ">= 0.10.4",
"rust_crate": "${package}",
"asset_name": "${package}-${rust_target}.tar.zst",
"platform": {
"x86_64_linux_musl": {},
"x86_64_macos": {},
"x86_64_windows": {
"asset_name": "${package}-${rust_target_arch}-pc-windows-gnullvm.tar.zst"
},
"aarch64_linux_musl": {},
"aarch64_macos": {},
"aarch64_windows": {
"asset_name": "${package}-${rust_target_arch}-pc-windows-gnullvm.tar.zst"
}
}
}