Initial commit: akai-fetch - AKAI sampler ISO downloader & extractor

- fetch: Go CLI tool for searching, downloading, and extracting
  AKAI sampler ISOs from archive.org
- scripts/extract_wavs.sh: Shell script driving akaiutil to
  convert samples to WAV
- Dockerfile: Multi-stage build packaging akaiutil + fetch
- third_party/akaiutil: Vendored akaiutil v4.6.7 source (GPLv2)
- docs/akaiutil.md: Full akaiutil reference
This commit is contained in:
2026-06-15 22:33:53 -07:00
commit 9f107b5f80
29 changed files with 24620 additions and 0 deletions
+33
View File
@@ -0,0 +1,33 @@
# Stage 1: Build akaiutil from source
FROM debian:11 AS akaiutil-builder
RUN apt-get update && apt-get install -y --no-install-recommends \
build-essential \
&& rm -rf /var/lib/apt/lists/*
COPY third_party/akaiutil/ /src/akaiutil/
WORKDIR /src/akaiutil
RUN make
# Stage 2: Build fetch (Go tool)
FROM golang:1.26-alpine AS fetch-builder
WORKDIR /src
COPY go.mod main.go /src/
RUN CGO_ENABLED=0 go build -o /fetch .
# Stage 3: Runtime image
FROM debian:11-slim
RUN apt-get update && apt-get install -y --no-install-recommends \
bash \
ca-certificates \
&& rm -rf /var/lib/apt/lists/*
COPY --from=akaiutil-builder /src/akaiutil/akaiutil /usr/local/bin/
COPY --from=fetch-builder /fetch /usr/local/bin/fetch
COPY scripts/extract_wavs.sh /usr/local/bin/
WORKDIR /data
ENTRYPOINT ["fetch"]
CMD ["--help"]