From cb59806455d0ae608decd4c9d3726053aa572651 Mon Sep 17 00:00:00 2001 From: Ryan Hughes Date: Sun, 20 Sep 2026 18:47:21 -0400 Subject: [PATCH] omasnap: update to 1.21.0 Upstream moved to omacom/omasnap and cut 1.21.0 from the same line as 1.20.1, so the version simply increases and no epoch is needed. check() flushes dirty pages before the smoke suite. The suite fsyncs its working documents under /tmp; on the CI droplets the build leaves about a gigabyte of dirty pages, and the flush that starts a few seconds into the suite made those fsyncs stall past the suite's 5-second settle windows on the first run after every build. --- pkgbuilds/omasnap/PKGBUILD | 26 +++++++++++++++++++++----- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/pkgbuilds/omasnap/PKGBUILD b/pkgbuilds/omasnap/PKGBUILD index 24b7e08..c5cf340 100644 --- a/pkgbuilds/omasnap/PKGBUILD +++ b/pkgbuilds/omasnap/PKGBUILD @@ -1,11 +1,11 @@ # Maintainer: Tobi Lütke pkgname=omasnap -pkgver=1.20.1 +pkgver=1.21.0 pkgrel=1 pkgdesc="Native Wayland screenshot and annotation overlay for Hyprland" arch=('x86_64' 'aarch64') -url="https://github.com/tobi/omasnap" +url="https://github.com/omacom/omasnap" license=('MIT' 'OFL-1.1') depends=( 'hyprland' @@ -25,7 +25,7 @@ makedepends=( options=('!debug') source=("$pkgname-$pkgver.tar.gz::$url/archive/refs/tags/v$pkgver.tar.gz") -sha256sums=('daf8fd17a81890661eebab791e6e78216c331e040043a1a6b72e638d3626b431') +sha256sums=('2f842edf67631825fa1e102876020040ea3e21341221a428b6aeee5580a9d928') build() { cmake -S "$pkgname-$pkgver" -B build -G Ninja \ @@ -35,8 +35,24 @@ build() { } check() { - QT_QPA_PLATFORM=offscreen \ - ./build/omasnap-smoke "$srcdir/omasnap-smoke-output" + # The smoke suite fsyncs its working documents under /tmp. On the CI + # droplets the build leaves about a gigabyte of dirty pages, and the + # flush that starts a few seconds into the suite makes those fsyncs stall + # long enough to overrun the suite's 5-second settle windows. Flush first. + local runtime_dir status started + started=$(date +%s%N); sync + echo "flushed dirty pages in $(( ($(date +%s%N) - started) / 1000000 )) ms" + runtime_dir=$(mktemp -d /dev/shm/omasnap-runtime.XXXXXX) + if QT_QPA_PLATFORM=offscreen QT_FORCE_STDERR_LOGGING=1 \ + XDG_RUNTIME_DIR="$runtime_dir" \ + ./build/omasnap-smoke "$srcdir/omasnap-smoke-output"; then + status=0 + else + status=$? + echo "omasnap-smoke exited with status $status" >&2 + fi + rm -r -- "$runtime_dir" + return "$status" } package() {