Skip to content

Commit 8c6d633

Browse files
author
damon
committed
release: add aarch64-linux builds, batdoc-bin AUR package, bump v1.0.1
1 parent cde51ac commit 8c6d633

5 files changed

Lines changed: 93 additions & 14 deletions

File tree

.github/workflows/release.yml

Lines changed: 47 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,19 @@ jobs:
1717
include:
1818
- target: x86_64-unknown-linux-musl
1919
os: ubuntu-latest
20-
artifact: batdoc-linux-x86_64.zst
20+
arch: x86_64
21+
platform: linux
22+
cross: false
23+
- target: aarch64-unknown-linux-musl
24+
os: ubuntu-latest
25+
arch: aarch64
26+
platform: linux
27+
cross: true
2128
- target: aarch64-apple-darwin
2229
os: macos-latest
23-
artifact: batdoc-darwin-aarch64.zst
30+
arch: aarch64
31+
platform: darwin
32+
cross: false
2433

2534
runs-on: ${{ matrix.os }}
2635

@@ -35,21 +44,48 @@ jobs:
3544
with:
3645
key: ${{ matrix.target }}
3746

38-
- name: Install musl tools
47+
- name: Install musl tools (x86_64)
3948
if: matrix.target == 'x86_64-unknown-linux-musl'
4049
run: sudo apt-get update && sudo apt-get install -y musl-tools
4150

51+
- name: Install cross-compilation tools (aarch64-linux)
52+
if: matrix.target == 'aarch64-unknown-linux-musl'
53+
run: |
54+
sudo apt-get update && sudo apt-get install -y musl-tools
55+
wget -qO- https://musl.cc/aarch64-linux-musl-cross.tgz | sudo tar xz -C /opt
56+
echo "/opt/aarch64-linux-musl-cross/bin" >> "$GITHUB_PATH"
57+
58+
- name: Set version from tag
59+
run: echo "VERSION=${GITHUB_REF_NAME#v}" >> "$GITHUB_ENV"
60+
4261
- name: Build
62+
env:
63+
CARGO_TARGET_AARCH64_UNKNOWN_LINUX_MUSL_LINKER: aarch64-linux-musl-gcc
4364
run: cargo build --release --target ${{ matrix.target }}
4465

45-
- name: Compress binary
46-
run: zstd -19 target/${{ matrix.target }}/release/batdoc -o ${{ matrix.artifact }}
66+
- name: Compress binary (zstd)
67+
run: zstd -19 target/${{ matrix.target }}/release/batdoc -o batdoc-${{ matrix.platform }}-${{ matrix.arch }}.zst
68+
69+
- name: Create tar.gz archive
70+
if: matrix.platform == 'linux'
71+
run: |
72+
mkdir -p batdoc_${{ env.VERSION }}_${{ matrix.arch }}
73+
cp target/${{ matrix.target }}/release/batdoc batdoc_${{ env.VERSION }}_${{ matrix.arch }}/
74+
cp LICENSE README.md batdoc_${{ env.VERSION }}_${{ matrix.arch }}/
75+
tar czf batdoc_${{ env.VERSION }}_${{ matrix.arch }}.tar.gz batdoc_${{ env.VERSION }}_${{ matrix.arch }}/
76+
77+
- name: Upload zstd artifact
78+
uses: actions/upload-artifact@v4
79+
with:
80+
name: batdoc-${{ matrix.platform }}-${{ matrix.arch }}.zst
81+
path: batdoc-${{ matrix.platform }}-${{ matrix.arch }}.zst
4782

48-
- name: Upload artifact
83+
- name: Upload tar.gz artifact
84+
if: matrix.platform == 'linux'
4985
uses: actions/upload-artifact@v4
5086
with:
51-
name: ${{ matrix.artifact }}
52-
path: ${{ matrix.artifact }}
87+
name: batdoc_${{ env.VERSION }}_${{ matrix.arch }}.tar.gz
88+
path: batdoc_${{ env.VERSION }}_${{ matrix.arch }}.tar.gz
5389

5490
packages:
5591
runs-on: ubuntu-latest
@@ -93,7 +129,10 @@ jobs:
93129
generate_release_notes: true
94130
files: |
95131
batdoc-linux-x86_64.zst
132+
batdoc-linux-aarch64.zst
96133
batdoc-darwin-aarch64.zst
134+
batdoc_*_x86_64.tar.gz
135+
batdoc_*_aarch64.tar.gz
97136
*.deb
98137
*.rpm
99138
*.apk

Cargo.lock

Lines changed: 5 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "batdoc"
3-
version = "1.0.0"
3+
version = "1.0.1"
44
edition = "2021"
55
description = "cat(1) for doc, docx, xls, xlsx, pptx, and pdf -- renders to markdown with bat"
66
license = "MIT"

pkg/arch-bin/.SRCINFO

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
pkgbase = batdoc-bin
2+
pkgdesc = cat(1) for doc, docx, xls, xlsx, pptx, and pdf -- renders to markdown with bat. Pre-compiled.
3+
pkgver = 1.0.0
4+
pkgrel = 1
5+
url = https://github.com/daemonp/batdoc
6+
arch = x86_64
7+
arch = aarch64
8+
license = MIT
9+
provides = batdoc
10+
conflicts = batdoc
11+
source_x86_64 = https://github.com/daemonp/batdoc/releases/download/v1.0.0/batdoc_1.0.0_x86_64.tar.gz
12+
sha256sums_x86_64 = SKIP
13+
source_aarch64 = https://github.com/daemonp/batdoc/releases/download/v1.0.0/batdoc_1.0.0_aarch64.tar.gz
14+
sha256sums_aarch64 = SKIP
15+
16+
pkgname = batdoc-bin

pkg/arch-bin/PKGBUILD

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# Maintainer: Damon Petta <d at disassemble dot net>
2+
3+
pkgname=batdoc-bin
4+
pkgver=1.0.0
5+
pkgrel=1
6+
pkgdesc='cat(1) for doc, docx, xls, xlsx, pptx, and pdf -- renders to markdown with bat. Pre-compiled.'
7+
arch=('x86_64' 'aarch64')
8+
url='https://github.com/daemonp/batdoc'
9+
license=('MIT')
10+
depends=()
11+
provides=('batdoc')
12+
conflicts=('batdoc')
13+
14+
source_x86_64=("${url}/releases/download/v${pkgver}/batdoc_${pkgver}_x86_64.tar.gz")
15+
source_aarch64=("${url}/releases/download/v${pkgver}/batdoc_${pkgver}_aarch64.tar.gz")
16+
17+
sha256sums_x86_64=('SKIP')
18+
sha256sums_aarch64=('SKIP')
19+
20+
package() {
21+
install -Dm755 "${srcdir}/batdoc_${pkgver}_${CARCH}/batdoc" "${pkgdir}/usr/bin/batdoc"
22+
install -Dm644 "${srcdir}/batdoc_${pkgver}_${CARCH}/LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
23+
install -Dm644 "${srcdir}/batdoc_${pkgver}_${CARCH}/README.md" "${pkgdir}/usr/share/doc/${pkgname}/README.md"
24+
}

0 commit comments

Comments
 (0)