Merge pull request #156 from jdx/codex/mise-bin
feat(mise-bin): add optimized mise binaries
This commit is contained in:
3 files changed
+78
No files matched your search
@@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
"source": "local",
|
||||||
|
"release_ring": "fast"
|
||||||
|
}
|
||||||
@@ -0,0 +1,37 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
repo="jdx/mise"
|
||||||
|
release=$(curl -fsSL "https://api.github.com/repos/$repo/releases/latest")
|
||||||
|
tag=$(jq -r '.tag_name // empty' <<<"$release")
|
||||||
|
|
||||||
|
if [[ ! "$tag" =~ ^v([A-Za-z0-9._+]+)$ ]]; then
|
||||||
|
echo "Latest mise release has an invalid tag: ${tag:-<empty>}" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
pkgver=${BASH_REMATCH[1]}
|
||||||
|
checksums=$(curl -fsSL \
|
||||||
|
"https://github.com/$repo/releases/download/$tag/SHASUMS256.txt")
|
||||||
|
|
||||||
|
checksum_for() {
|
||||||
|
local filename=$1
|
||||||
|
local checksum
|
||||||
|
checksum=$(awk -v filename="./$filename" '$2 == filename { print $1 }' <<<"$checksums")
|
||||||
|
|
||||||
|
if [[ ! "$checksum" =~ ^[0-9a-f]{64}$ ]]; then
|
||||||
|
echo "No valid checksum found for $filename in $tag" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "$checksum"
|
||||||
|
}
|
||||||
|
|
||||||
|
x86_64=$(checksum_for "mise-v${pkgver}-linux-x64.tar.xz")
|
||||||
|
aarch64=$(checksum_for "mise-v${pkgver}-linux-arm64.tar.xz")
|
||||||
|
|
||||||
|
jq -n \
|
||||||
|
--arg pkgver "$pkgver" \
|
||||||
|
--arg x86_64 "$x86_64" \
|
||||||
|
--arg aarch64 "$aarch64" \
|
||||||
|
'{pkgver: $pkgver, sha256sums: {x86_64: [$x86_64], aarch64: [$aarch64]}}'
|
||||||
@@ -0,0 +1,37 @@
|
|||||||
|
# Maintainer: Jeff Dickey <releases@mise.jdx.dev>
|
||||||
|
pkgname=mise-bin
|
||||||
|
pkgver=2026.8.6
|
||||||
|
pkgrel=1
|
||||||
|
pkgdesc="dev tools, env vars, task runner"
|
||||||
|
arch=('x86_64' 'aarch64')
|
||||||
|
url="https://github.com/jdx/mise"
|
||||||
|
license=('MIT')
|
||||||
|
options=('!debug')
|
||||||
|
optdepends=(
|
||||||
|
'bash-completion: bash completion support'
|
||||||
|
)
|
||||||
|
provides=('mise')
|
||||||
|
conflicts=('mise')
|
||||||
|
source_x86_64=("https://github.com/jdx/mise/releases/download/v${pkgver}/mise-v${pkgver}-linux-x64.tar.xz")
|
||||||
|
source_aarch64=("https://github.com/jdx/mise/releases/download/v${pkgver}/mise-v${pkgver}-linux-arm64.tar.xz")
|
||||||
|
sha256sums_x86_64=('263bad5fd24b82293645d5e5314a8090de2e52391a7f6713784e8aa519a420b7')
|
||||||
|
sha256sums_aarch64=('dfdb41a4654f473f504625ffa1e011e119e5fd1880ccbed8dcb0b21a58ccd309')
|
||||||
|
|
||||||
|
package() {
|
||||||
|
install -Dm755 "${srcdir}/mise/bin/mise" "${pkgdir}/usr/bin/mise"
|
||||||
|
|
||||||
|
# disable mise self-update (managed by pacman)
|
||||||
|
install -Dm644 /dev/null "${pkgdir}/usr/lib/mise/.disable-self-update"
|
||||||
|
|
||||||
|
# man page
|
||||||
|
install -Dm644 "${srcdir}/mise/man/man1/mise.1" "${pkgdir}/usr/share/man/man1/mise.1"
|
||||||
|
|
||||||
|
# fish completion (bash/zsh not included in pre-built tarball)
|
||||||
|
install -Dm644 "${srcdir}/mise/share/fish/vendor_conf.d/mise-activate.fish" "${pkgdir}/usr/share/fish/vendor_conf.d/mise-activate.fish"
|
||||||
|
|
||||||
|
# license
|
||||||
|
install -Dm644 "${srcdir}/mise/LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
|
||||||
|
|
||||||
|
# docs
|
||||||
|
install -Dm644 "${srcdir}/mise/README.md" "${pkgdir}/usr/share/doc/${pkgname}/README.md"
|
||||||
|
}
|
||||||
Reference in new issue
Block a user