From bc5cbff2469988c95fc440fec8fa0c2758274555 Mon Sep 17 00:00:00 2001 From: David Heinemeier Hansson Date: Fri, 24 Jul 2026 17:41:15 -0700 Subject: [PATCH] Add omarchy-audio-tuner Tools for authoring the per-model speaker tunings Omarchy ships. Split out of the Omarchy tree because measuring a laptop and fitting a filter-chain is contributor work almost nobody does, and it needs python, ffmpeg and mpv, none of which Omarchy installs. Depends on lsp-plugins-lv2 as well, since that supplies the lookahead limiter a generated chain ends in and is needed to audition the result, not only author it. Co-Authored-By: Claude Opus 5 (1M context) --- .../omarchy-audio-tuner/.omarchy/package.json | 3 ++ pkgbuilds/omarchy-audio-tuner/PKGBUILD | 34 +++++++++++++++++++ 2 files changed, 37 insertions(+) create mode 100644 pkgbuilds/omarchy-audio-tuner/.omarchy/package.json create mode 100644 pkgbuilds/omarchy-audio-tuner/PKGBUILD diff --git a/pkgbuilds/omarchy-audio-tuner/.omarchy/package.json b/pkgbuilds/omarchy-audio-tuner/.omarchy/package.json new file mode 100644 index 0000000..2a9719d --- /dev/null +++ b/pkgbuilds/omarchy-audio-tuner/.omarchy/package.json @@ -0,0 +1,3 @@ +{ + "source": "local" +} diff --git a/pkgbuilds/omarchy-audio-tuner/PKGBUILD b/pkgbuilds/omarchy-audio-tuner/PKGBUILD new file mode 100644 index 0000000..8c6da9a --- /dev/null +++ b/pkgbuilds/omarchy-audio-tuner/PKGBUILD @@ -0,0 +1,34 @@ +# Maintainer: David Heinemeier Hansson +pkgname=omarchy-audio-tuner +pkgver=0.1.0 +pkgrel=1 +pkgdesc="Tools for authoring Omarchy laptop speaker tunings" +arch=('any') +url="https://github.com/omacom-io/omarchy-audio-tuner" +license=('MIT') +options=('!debug') +# pactl comes from libpulse; mpv plays the probe, ffmpeg captures and analyses it, +# and lsp-plugins-lv2 supplies the lookahead limiter a generated chain ends in, so +# it is needed to audition the result and not only to author it. +depends=('bash' 'python' 'ffmpeg' 'mpv' 'libpulse' 'lsp-plugins-lv2') +makedepends=('git') +source=("git+https://github.com/omacom-io/omarchy-audio-tuner.git#tag=v$pkgver") +sha256sums=('SKIP') + +package() { + cd "$srcdir/$pkgname" + + # The tools call each other by relative path, so the tree is installed intact + # and a single symlink puts one command on PATH. Generated files (the probe + # signal and its tone list) go to ~/.cache/omarchy-audio-tuner, so nothing is + # written back into this read-only tree. + install -dm755 "$pkgdir/usr/share/$pkgname" + cp -a measure fit generate compare "$pkgdir/usr/share/$pkgname/" + install -Dm755 omarchy-audio-tuner "$pkgdir/usr/share/$pkgname/omarchy-audio-tuner" + + install -dm755 "$pkgdir/usr/bin" + ln -s "/usr/share/$pkgname/omarchy-audio-tuner" "$pkgdir/usr/bin/$pkgname" + + install -Dm644 README.md "$pkgdir/usr/share/doc/$pkgname/README.md" + install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +}