git: 4095dcdf2c47 - main - audio/songrec: update 0.7.3 → 0.7.4
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 16 Jun 2026 06:19:45 UTC
The branch main has been updated by yuri:
URL: https://cgit.FreeBSD.org/ports/commit/?id=4095dcdf2c477c7098d0d5669c357ec11255c3b5
commit 4095dcdf2c477c7098d0d5669c357ec11255c3b5
Author: Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2026-06-15 06:36:01 +0000
Commit: Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2026-06-16 06:18:26 +0000
audio/songrec: update 0.7.3 → 0.7.4
---
audio/songrec/Makefile | 40 ++++----------
audio/songrec/distinfo | 64 +++++++---------------
.../files/cpal-frames-to-duration-bsd.patch | 16 ------
...-cargo-crates_cpal-0.18.1_src_host_alsa_mod.rs} | 33 +++++------
.../patch-cargo-crates_cpal-0.18.1_src_host_mod.rs | 12 ++++
...atch-cargo-crates_pipewire-sys-0.10.0_build.rs} | 4 +-
...ch-cargo-crates_pipewire-sys-0.10.0_src_lib.rs} | 6 +-
7 files changed, 64 insertions(+), 111 deletions(-)
diff --git a/audio/songrec/Makefile b/audio/songrec/Makefile
index 351f81752f7d..ca0f8a10fb11 100644
--- a/audio/songrec/Makefile
+++ b/audio/songrec/Makefile
@@ -1,6 +1,5 @@
PORTNAME= songrec
-DISTVERSION= 0.7.3
-PORTREVISION= 1
+DISTVERSION= 0.7.4
CATEGORIES= audio
MAINTAINER= yuri@FreeBSD.org
@@ -65,11 +64,9 @@ CARGO_CRATES= adler2-2.0.1 \
cairo-rs-0.21.5 \
cairo-sys-rs-0.21.5 \
cc-1.2.60 \
- cesu8-1.1.0 \
cexpr-0.6.0 \
cfg-expr-0.20.7 \
cfg-if-1.0.4 \
- cfg_aliases-0.2.1 \
chacha20-0.10.0 \
chrono-0.4.44 \
clang-sys-1.8.1 \
@@ -80,10 +77,10 @@ CARGO_CRATES= adler2-2.0.1 \
colorchoice-1.0.5 \
combine-4.6.7 \
concurrent-queue-2.5.0 \
- convert_case-0.8.0 \
cookie-factory-0.3.3 \
core-foundation-sys-0.8.7 \
coreaudio-rs-0.14.2 \
+ cpal-0.18.1 \
cpufeatures-0.3.0 \
crc32fast-1.5.0 \
crossbeam-utils-0.8.21 \
@@ -157,7 +154,8 @@ CARGO_CRATES= adler2-2.0.1 \
is_terminal_polyfill-1.70.2 \
itertools-0.13.0 \
itoa-1.0.18 \
- jni-0.21.1 \
+ jni-0.22.4 \
+ jni-macros-0.22.4 \
jni-sys-0.3.1 \
jni-sys-0.4.1 \
jni-sys-macros-0.4.1 \
@@ -172,8 +170,8 @@ CARGO_CRATES= adler2-2.0.1 \
libpulse-binding-2.30.1 \
libpulse-sys-1.23.0 \
libredox-0.1.16 \
- libspa-0.9.2 \
- libspa-sys-0.9.2 \
+ libspa-0.10.0 \
+ libspa-sys-0.10.0 \
linux-raw-sys-0.12.1 \
locale_config-0.3.0 \
log-0.4.29 \
@@ -191,7 +189,6 @@ CARGO_CRATES= adler2-2.0.1 \
ndk-0.9.0 \
ndk-context-0.1.1 \
ndk-sys-0.6.0+11769913 \
- nix-0.30.1 \
nom-7.1.3 \
nom-8.0.0 \
num-bigint-0.4.6 \
@@ -225,8 +222,8 @@ CARGO_CRATES= adler2-2.0.1 \
percent-encoding-2.3.2 \
pin-project-lite-0.2.17 \
piper-0.2.5 \
- pipewire-0.9.2 \
- pipewire-sys-0.9.2 \
+ pipewire-0.10.0 \
+ pipewire-sys-0.10.0 \
pkg-config-0.3.33 \
png-0.18.1 \
polling-3.11.0 \
@@ -266,6 +263,8 @@ CARGO_CRATES= adler2-2.0.1 \
shlex-1.3.0 \
signal-hook-registry-1.4.8 \
simd-adler32-0.3.9 \
+ simd_cesu8-1.1.1 \
+ simdutf8-0.1.5 \
slab-0.4.12 \
slice-ring-buffer-0.3.4 \
smallvec-1.15.1 \
@@ -314,7 +313,6 @@ CARGO_CRATES= adler2-2.0.1 \
typeid-1.0.3 \
uds_windows-1.2.1 \
unicode-ident-1.0.24 \
- unicode-segmentation-1.13.2 \
unicode-width-0.2.2 \
unicode-xid-0.2.6 \
utf8parse-0.2.2 \
@@ -351,17 +349,8 @@ CARGO_CRATES= adler2-2.0.1 \
windows-numerics-0.3.1 \
windows-result-0.4.1 \
windows-strings-0.5.1 \
- windows-sys-0.45.0 \
windows-sys-0.61.2 \
- windows-targets-0.42.2 \
windows-threading-0.2.1 \
- windows_aarch64_gnullvm-0.42.2 \
- windows_aarch64_msvc-0.42.2 \
- windows_i686_gnu-0.42.2 \
- windows_i686_msvc-0.42.2 \
- windows_x86_64_gnu-0.42.2 \
- windows_x86_64_gnullvm-0.42.2 \
- windows_x86_64_msvc-0.42.2 \
winnow-0.7.15 \
winnow-1.0.2 \
wit-bindgen-0.51.0 \
@@ -378,17 +367,10 @@ CARGO_CRATES= adler2-2.0.1 \
zmij-1.0.21 \
zvariant-5.10.0 \
zvariant_derive-5.10.0 \
- zvariant_utils-3.3.0 \
- cpal@git+https://github.com/RustAudio/cpal.git?rev=1c40a85\#1c40a85e2e74b376c6b35eef8d111586d426a61f
+ zvariant_utils-3.3.0
PLIST_FILES= bin/${PORTNAME}
# known problem: The 'Audio input' combobox doesn't have any selections, see https://github.com/marin-m/SongRec/issues/115
-post-patch:
- @${PATCH} -p0 -d ${WRKDIR}/cpal-1c40a85e2e74b376c6b35eef8d111586d426a61f \
- < ${PATCHDIR}/cpal-alsa-estrpipe.patch
- @${PATCH} -p0 -d ${WRKDIR}/cpal-1c40a85e2e74b376c6b35eef8d111586d426a61f \
- < ${PATCHDIR}/cpal-frames-to-duration-bsd.patch
-
.include <bsd.port.mk>
diff --git a/audio/songrec/distinfo b/audio/songrec/distinfo
index e0ef38b85fb3..436f1dbfdab8 100644
--- a/audio/songrec/distinfo
+++ b/audio/songrec/distinfo
@@ -1,4 +1,4 @@
-TIMESTAMP = 1779232867
+TIMESTAMP = 1781467440
SHA256 (rust/crates/adler2-2.0.1.crate) = 320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa
SIZE (rust/crates/adler2-2.0.1.crate) = 13366
SHA256 (rust/crates/aho-corasick-1.1.4.crate) = ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301
@@ -81,16 +81,12 @@ SHA256 (rust/crates/cairo-sys-rs-0.21.5.crate) = 06c28280c6b12055b5e39e4554271ae
SIZE (rust/crates/cairo-sys-rs-0.21.5.crate) = 14448
SHA256 (rust/crates/cc-1.2.60.crate) = 43c5703da9466b66a946814e1adf53ea2c90f10063b86290cc9eb67ce3478a20
SIZE (rust/crates/cc-1.2.60.crate) = 97051
-SHA256 (rust/crates/cesu8-1.1.0.crate) = 6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c
-SIZE (rust/crates/cesu8-1.1.0.crate) = 10555
SHA256 (rust/crates/cexpr-0.6.0.crate) = 6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766
SIZE (rust/crates/cexpr-0.6.0.crate) = 17966
SHA256 (rust/crates/cfg-expr-0.20.7.crate) = 3c6b04e07d8080154ed4ac03546d9a2b303cc2fe1901ba0b35b301516e289368
SIZE (rust/crates/cfg-expr-0.20.7.crate) = 45355
SHA256 (rust/crates/cfg-if-1.0.4.crate) = 9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801
SIZE (rust/crates/cfg-if-1.0.4.crate) = 9360
-SHA256 (rust/crates/cfg_aliases-0.2.1.crate) = 613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724
-SIZE (rust/crates/cfg_aliases-0.2.1.crate) = 6355
SHA256 (rust/crates/chacha20-0.10.0.crate) = 6f8d983286843e49675a4b7a2d174efe136dc93a18d69130dd18198a6c167601
SIZE (rust/crates/chacha20-0.10.0.crate) = 38763
SHA256 (rust/crates/chrono-0.4.44.crate) = c673075a2e0e5f4a1dde27ce9dee1ea4558c7ffe648f576438a20ca1d2acc4b0
@@ -111,14 +107,14 @@ SHA256 (rust/crates/combine-4.6.7.crate) = ba5a308b75df32fe02788e748662718f03fde
SIZE (rust/crates/combine-4.6.7.crate) = 134808
SHA256 (rust/crates/concurrent-queue-2.5.0.crate) = 4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973
SIZE (rust/crates/concurrent-queue-2.5.0.crate) = 22654
-SHA256 (rust/crates/convert_case-0.8.0.crate) = baaaa0ecca5b51987b9423ccdc971514dd8b0bb7b4060b983d3664dad3f1f89f
-SIZE (rust/crates/convert_case-0.8.0.crate) = 22097
SHA256 (rust/crates/cookie-factory-0.3.3.crate) = 9885fa71e26b8ab7855e2ec7cae6e9b380edff76cd052e07c683a0319d51b3a2
SIZE (rust/crates/cookie-factory-0.3.3.crate) = 19084
SHA256 (rust/crates/core-foundation-sys-0.8.7.crate) = 773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b
SIZE (rust/crates/core-foundation-sys-0.8.7.crate) = 37712
SHA256 (rust/crates/coreaudio-rs-0.14.2.crate) = 7d5d7dca3ebcf65a035582c9ad4385371a9d9ee6537474d2a278f4e1e475bb58
SIZE (rust/crates/coreaudio-rs-0.14.2.crate) = 44962
+SHA256 (rust/crates/cpal-0.18.1.crate) = 5f77b11176c37874be37e8d691c946e31b2b8c357abce9526f6a99eb469e1028
+SIZE (rust/crates/cpal-0.18.1.crate) = 222732
SHA256 (rust/crates/cpufeatures-0.3.0.crate) = 8b2a41393f66f16b0823bb79094d54ac5fbd34ab292ddafb9a0456ac9f87d201
SIZE (rust/crates/cpufeatures-0.3.0.crate) = 14156
SHA256 (rust/crates/crc32fast-1.5.0.crate) = 9481c1c90cbf2ac953f07c8d4a58aa3945c425b7185c9154d67a65e4230da511
@@ -265,8 +261,10 @@ SHA256 (rust/crates/itertools-0.13.0.crate) = 413ee7dfc52ee1a4949ceeb7dbc8a33f2d
SIZE (rust/crates/itertools-0.13.0.crate) = 146261
SHA256 (rust/crates/itoa-1.0.18.crate) = 8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682
SIZE (rust/crates/itoa-1.0.18.crate) = 15935
-SHA256 (rust/crates/jni-0.21.1.crate) = 1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97
-SIZE (rust/crates/jni-0.21.1.crate) = 105028
+SHA256 (rust/crates/jni-0.22.4.crate) = 5efd9a482cf3a427f00d6b35f14332adc7902ce91efb778580e180ff90fa3498
+SIZE (rust/crates/jni-0.22.4.crate) = 199347
+SHA256 (rust/crates/jni-macros-0.22.4.crate) = a00109accc170f0bdb141fed3e393c565b6f5e072365c3bd58f5b062591560a3
+SIZE (rust/crates/jni-macros-0.22.4.crate) = 63557
SHA256 (rust/crates/jni-sys-0.3.1.crate) = 41a652e1f9b6e0275df1f15b32661cf0d4b78d4d87ddec5e0c3c20f097433258
SIZE (rust/crates/jni-sys-0.3.1.crate) = 11570
SHA256 (rust/crates/jni-sys-0.4.1.crate) = c6377a88cb3910bee9b0fa88d4f42e1d2da8e79915598f65fb0c7ee14c878af2
@@ -295,10 +293,10 @@ SHA256 (rust/crates/libpulse-sys-1.23.0.crate) = d74371848b22e989f829cc1621d2ebd
SIZE (rust/crates/libpulse-sys-1.23.0.crate) = 36914
SHA256 (rust/crates/libredox-0.1.16.crate) = e02f3bb43d335493c96bf3fd3a321600bf6bd07ed34bc64118e9293bdffea46c
SIZE (rust/crates/libredox-0.1.16.crate) = 9600
-SHA256 (rust/crates/libspa-0.9.2.crate) = b6b8cfa2a7656627b4c92c6b9ef929433acd673d5ab3708cda1b18478ac00df4
-SIZE (rust/crates/libspa-0.9.2.crate) = 60642
-SHA256 (rust/crates/libspa-sys-0.9.2.crate) = 901049455d2eb6decf9058235d745237952f4804bc584c5fcb41412e6adcc6e0
-SIZE (rust/crates/libspa-sys-0.9.2.crate) = 8920
+SHA256 (rust/crates/libspa-0.10.0.crate) = 2909f3be29d674e7f10604aff18d1bbe1bb03c4cd61c8a8ba19c0b1d162f7d4e
+SIZE (rust/crates/libspa-0.10.0.crate) = 65520
+SHA256 (rust/crates/libspa-sys-0.10.0.crate) = 69ad52764fca54818486f3cf75afec844d1f1a1568c24dcee25d41b1ab007dda
+SIZE (rust/crates/libspa-sys-0.10.0.crate) = 9409
SHA256 (rust/crates/linux-raw-sys-0.12.1.crate) = 32a66949e030da00e8c7d4434b251670a91556f4144941d37452769c25d58a53
SIZE (rust/crates/linux-raw-sys-0.12.1.crate) = 3006116
SHA256 (rust/crates/locale_config-0.3.0.crate) = 08d2c35b16f4483f6c26f0e4e9550717a2f6575bcd6f12a53ff0c490a94a6934
@@ -333,8 +331,6 @@ SHA256 (rust/crates/ndk-context-0.1.1.crate) = 27b02d87554356db9e9a873add8782d4e
SIZE (rust/crates/ndk-context-0.1.1.crate) = 2205
SHA256 (rust/crates/ndk-sys-0.6.0+11769913.crate) = ee6cda3051665f1fb8d9e08fc35c96d5a244fb1be711a03b71118828afc9a873
SIZE (rust/crates/ndk-sys-0.6.0+11769913.crate) = 329984
-SHA256 (rust/crates/nix-0.30.1.crate) = 74523f3a35e05aba87a1d978330aef40f67b0304ac79c1c00b294c9830543db6
-SIZE (rust/crates/nix-0.30.1.crate) = 342015
SHA256 (rust/crates/nom-7.1.3.crate) = d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a
SIZE (rust/crates/nom-7.1.3.crate) = 117570
SHA256 (rust/crates/nom-8.0.0.crate) = df9761775871bdef83bee530e60050f7e54b1105350d6884eb0fb4f46c2f9405
@@ -401,10 +397,10 @@ SHA256 (rust/crates/pin-project-lite-0.2.17.crate) = a89322df9ebe1c1578d689c9231
SIZE (rust/crates/pin-project-lite-0.2.17.crate) = 31034
SHA256 (rust/crates/piper-0.2.5.crate) = c835479a4443ded371d6c535cbfd8d31ad92c5d23ae9770a61bc155e4992a3c1
SIZE (rust/crates/piper-0.2.5.crate) = 23908
-SHA256 (rust/crates/pipewire-0.9.2.crate) = 9688b89abf11d756499f7c6190711d6dbe5a3acdb30c8fbf001d6596d06a8d44
-SIZE (rust/crates/pipewire-0.9.2.crate) = 55856
-SHA256 (rust/crates/pipewire-sys-0.9.2.crate) = cb028afee0d6ca17020b090e3b8fa2d7de23305aef975c7e5192a5050246ea36
-SIZE (rust/crates/pipewire-sys-0.9.2.crate) = 6679
+SHA256 (rust/crates/pipewire-0.10.0.crate) = 8585aba8a52ad74ccc633b8e293c1dc4277976bd5d510b925533f34fd6685f38
+SIZE (rust/crates/pipewire-0.10.0.crate) = 67352
+SHA256 (rust/crates/pipewire-sys-0.10.0.crate) = f2089f245b548723e60325773c27f586b7a2372c79ea941b246cd0d654706adc
+SIZE (rust/crates/pipewire-sys-0.10.0.crate) = 6401
SHA256 (rust/crates/pkg-config-0.3.33.crate) = 19f132c84eca552bf34cab8ec81f1c1dcc229b811638f9d283dceabe58c5569e
SIZE (rust/crates/pkg-config-0.3.33.crate) = 21590
SHA256 (rust/crates/png-0.18.1.crate) = 60769b8b31b2a9f263dae2776c37b1b28ae246943cf719eb6946a1db05128a61
@@ -483,6 +479,10 @@ SHA256 (rust/crates/signal-hook-registry-1.4.8.crate) = c4db69cba1110affc0e9f7bc
SIZE (rust/crates/signal-hook-registry-1.4.8.crate) = 21668
SHA256 (rust/crates/simd-adler32-0.3.9.crate) = 703d5c7ef118737c72f1af64ad2f6f8c5e1921f818cdcb97b8fe6fc69bf66214
SIZE (rust/crates/simd-adler32-0.3.9.crate) = 18572
+SHA256 (rust/crates/simd_cesu8-1.1.1.crate) = 94f90157bb87cddf702797c5dadfa0be7d266cdf49e22da2fcaa32eff75b2c33
+SIZE (rust/crates/simd_cesu8-1.1.1.crate) = 319542
+SHA256 (rust/crates/simdutf8-0.1.5.crate) = e3a9fe34e3e7a50316060351f37187a3f546bce95496156754b601a5fa71b76e
+SIZE (rust/crates/simdutf8-0.1.5.crate) = 28488
SHA256 (rust/crates/slab-0.4.12.crate) = 0c790de23124f9ab44544d7ac05d60440adc586479ce501c1d6d7da3cd8c9cf5
SIZE (rust/crates/slab-0.4.12.crate) = 19080
SHA256 (rust/crates/slice-ring-buffer-0.3.4.crate) = 84ae312bda09b2368f79f985fdb4df4a0b5cbc75546b511303972d195f8c27d6
@@ -579,8 +579,6 @@ SHA256 (rust/crates/uds_windows-1.2.1.crate) = f2f6fb2847f6742cd76af783a2a2c49e9
SIZE (rust/crates/uds_windows-1.2.1.crate) = 21931
SHA256 (rust/crates/unicode-ident-1.0.24.crate) = e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75
SIZE (rust/crates/unicode-ident-1.0.24.crate) = 49298
-SHA256 (rust/crates/unicode-segmentation-1.13.2.crate) = 9629274872b2bfaf8d66f5f15725007f635594914870f65218920345aa11aa8c
-SIZE (rust/crates/unicode-segmentation-1.13.2.crate) = 111829
SHA256 (rust/crates/unicode-width-0.2.2.crate) = b4ac048d71ede7ee76d585517add45da530660ef4390e49b098733c6e897f254
SIZE (rust/crates/unicode-width-0.2.2.crate) = 282768
SHA256 (rust/crates/unicode-xid-0.2.6.crate) = ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853
@@ -653,28 +651,10 @@ SHA256 (rust/crates/windows-result-0.4.1.crate) = 7781fa89eaf60850ac3d2da7af8e52
SIZE (rust/crates/windows-result-0.4.1.crate) = 13381
SHA256 (rust/crates/windows-strings-0.5.1.crate) = 7837d08f69c77cf6b07689544538e017c1bfcf57e34b4c0ff58e6c2cd3b37091
SIZE (rust/crates/windows-strings-0.5.1.crate) = 13966
-SHA256 (rust/crates/windows-sys-0.45.0.crate) = 75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0
-SIZE (rust/crates/windows-sys-0.45.0.crate) = 2568659
SHA256 (rust/crates/windows-sys-0.61.2.crate) = ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc
SIZE (rust/crates/windows-sys-0.61.2.crate) = 2517186
-SHA256 (rust/crates/windows-targets-0.42.2.crate) = 8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071
-SIZE (rust/crates/windows-targets-0.42.2.crate) = 5492
SHA256 (rust/crates/windows-threading-0.2.1.crate) = 3949bd5b99cafdf1c7ca86b43ca564028dfe27d66958f2470940f73d86d75b37
SIZE (rust/crates/windows-threading-0.2.1.crate) = 9686
-SHA256 (rust/crates/windows_aarch64_gnullvm-0.42.2.crate) = 597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8
-SIZE (rust/crates/windows_aarch64_gnullvm-0.42.2.crate) = 364071
-SHA256 (rust/crates/windows_aarch64_msvc-0.42.2.crate) = e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43
-SIZE (rust/crates/windows_aarch64_msvc-0.42.2.crate) = 666981
-SHA256 (rust/crates/windows_i686_gnu-0.42.2.crate) = c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f
-SIZE (rust/crates/windows_i686_gnu-0.42.2.crate) = 736236
-SHA256 (rust/crates/windows_i686_msvc-0.42.2.crate) = 44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060
-SIZE (rust/crates/windows_i686_msvc-0.42.2.crate) = 724951
-SHA256 (rust/crates/windows_x86_64_gnu-0.42.2.crate) = 8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36
-SIZE (rust/crates/windows_x86_64_gnu-0.42.2.crate) = 699373
-SHA256 (rust/crates/windows_x86_64_gnullvm-0.42.2.crate) = 26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3
-SIZE (rust/crates/windows_x86_64_gnullvm-0.42.2.crate) = 364068
-SHA256 (rust/crates/windows_x86_64_msvc-0.42.2.crate) = 9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0
-SIZE (rust/crates/windows_x86_64_msvc-0.42.2.crate) = 666936
SHA256 (rust/crates/winnow-0.7.15.crate) = df79d97927682d2fd8adb29682d1140b343be4ac0f08fd68b7765d9c059d3945
SIZE (rust/crates/winnow-0.7.15.crate) = 187092
SHA256 (rust/crates/winnow-1.0.2.crate) = 2ee1708bef14716a11bae175f579062d4554d95be2c6829f518df847b7b3fdd0
@@ -709,7 +689,5 @@ SHA256 (rust/crates/zvariant_derive-5.10.0.crate) = 5b59b012ebe9c46656f9cc08d8da
SIZE (rust/crates/zvariant_derive-5.10.0.crate) = 16592
SHA256 (rust/crates/zvariant_utils-3.3.0.crate) = f75c23a64ef8f40f13a6989991e643554d9bef1d682a281160cf0c1bc389c5e9
SIZE (rust/crates/zvariant_utils-3.3.0.crate) = 15417
-SHA256 (RustAudio-cpal-1c40a85e2e74b376c6b35eef8d111586d426a61f_GH0.tar.gz) = 031eafb73568cf31807d1021bb87f094c4eeeaa21bf5bca2f7b24d323ded3600
-SIZE (RustAudio-cpal-1c40a85e2e74b376c6b35eef8d111586d426a61f_GH0.tar.gz) = 245799
-SHA256 (marin-m-SongRec-0.7.3_GH0.tar.gz) = f88bd166b1385ddd94e759fab72a997c87077043d0232c2395440941bc694a92
-SIZE (marin-m-SongRec-0.7.3_GH0.tar.gz) = 56713293
+SHA256 (marin-m-SongRec-0.7.4_GH0.tar.gz) = f62efd1ad8c8eb4722f814c3ef96a41f1f7ac261564b2609f79ecb469964852a
+SIZE (marin-m-SongRec-0.7.4_GH0.tar.gz) = 56715934
diff --git a/audio/songrec/files/cpal-frames-to-duration-bsd.patch b/audio/songrec/files/cpal-frames-to-duration-bsd.patch
deleted file mode 100644
index 8f835c5f720e..000000000000
--- a/audio/songrec/files/cpal-frames-to-duration-bsd.patch
+++ /dev/null
@@ -1,16 +0,0 @@
--- frames_to_duration() is gated behind a #[cfg] that excludes bare FreeBSD/DragonFly/NetBSD.
--- These BSDs use the ALSA and PipeWire backends which both call frames_to_duration().
--- Add the missing target_os values so the function is compiled on BSDs even without the
--- jack feature.
---- src/host/mod.rs.orig
-+++ src/host/mod.rs
-@@ -195,6 +195,9 @@
- /// Convert a frame count at a given sample rate to a [`std::time::Duration`].
- #[cfg(any(
- target_os = "linux",
-+ target_os = "dragonfly",
-+ target_os = "freebsd",
-+ target_os = "netbsd",
- target_os = "windows",
- target_vendor = "apple",
- feature = "audioworklet",
diff --git a/audio/songrec/files/cpal-alsa-estrpipe.patch b/audio/songrec/files/patch-cargo-crates_cpal-0.18.1_src_host_alsa_mod.rs
similarity index 63%
rename from audio/songrec/files/cpal-alsa-estrpipe.patch
rename to audio/songrec/files/patch-cargo-crates_cpal-0.18.1_src_host_alsa_mod.rs
index 655a169980b2..5ab1f57c0891 100644
--- a/audio/songrec/files/cpal-alsa-estrpipe.patch
+++ b/audio/songrec/files/patch-cargo-crates_cpal-0.18.1_src_host_alsa_mod.rs
@@ -1,13 +1,9 @@
--- ESTRPIPE is Linux-specific (hardware suspend from ALSA); it is not present on FreeBSD.
--- The ALSA compatibility library on FreeBSD never returns this errno, so defining it as
--- an out-of-range sentinel makes the match arms unreachable without compile errors.
---- src/host/alsa/mod.rs.orig
-+++ src/host/alsa/mod.rs
-@@ -93,6 +93,14 @@
+--- cargo-crates/cpal-0.18.1/src/host/alsa/mod.rs.orig 2026-06-14 22:13:07 UTC
++++ cargo-crates/cpal-0.18.1/src/host/alsa/mod.rs
+@@ -92,6 +92,14 @@ const DEFAULT_PERIODS: alsa::pcm::Frames = 2;
+ const DEFAULT_DEVICE: &str = "default";
+ const DEFAULT_PERIODS: alsa::pcm::Frames = 2;
- // TODO: Not yet defined in rust-lang/libc crate
- const LIBC_ENOTSUPP: libc::c_int = 524;
-+
+// ESTRPIPE is Linux-specific (hardware suspend from ALSA); not present on FreeBSD.
+// The ALSA compatibility library on FreeBSD never returns this, so defining it as an
+// out-of-range sentinel ensures the match arms are unreachable without compile errors.
@@ -15,20 +11,21 @@
+const ESTRPIPE: libc::c_int = libc::ESTRPIPE;
+#[cfg(not(target_os = "linux"))]
+const ESTRPIPE: libc::c_int = 86;
++
+ // Some ALSA plugins (e.g. alsaequal, certain USB drivers) are not reentrant.
+ static ALSA_OPEN_MUTEX: std::sync::Mutex<()> = std::sync::Mutex::new(());
- /// The default Linux and BSD host type.
- #[derive(Debug, Clone)]
-@@ -1084,7 +1092,7 @@
- return Err(Error::with_message(ErrorKind::Xrun, err.to_string()))
- }
+@@ -1122,7 +1130,7 @@ fn poll_for_period(
+ // Xrun: recover via prepare() (+ start() for capture, handled by the worker).
+ Err(err) if err.errno() == libc::EPIPE => return Err(ErrorKind::Xrun.into()),
// Suspend: try hardware resume first; fall back to prepare() if unsupported.
- Err(err) if err.errno() == libc::ESTRPIPE => return try_resume(&stream.handle),
+ Err(err) if err.errno() == ESTRPIPE => return try_resume(&stream.handle),
res => res,
}?;
// ALSA can have spurious wakeups where poll returns but avail < avail_min.
-@@ -1147,7 +1155,7 @@
- }
+@@ -1183,7 +1191,7 @@ fn process_input(
+ Err(err) if err.errno() == libc::EPIPE => return Err(ErrorKind::Xrun.into()),
// ESTRPIPE = hardware suspend: try soft resume first, falling back to underrun
// recovery if the hardware doesn't support it.
- Err(err) if err.errno() == libc::ESTRPIPE => {
@@ -36,8 +33,8 @@
return try_resume(&stream.handle).map(|_| ());
}
Err(err) => return Err(err.into()),
-@@ -1217,7 +1225,7 @@
- }
+@@ -1251,7 +1259,7 @@ fn process_output(
+ Err(err) if err.errno() == libc::EPIPE => return Err(ErrorKind::Xrun.into()),
// ESTRPIPE = hardware suspend: try soft resume first, falling back to underrun
// recovery if the hardware doesn't support it.
- Err(err) if err.errno() == libc::ESTRPIPE => {
diff --git a/audio/songrec/files/patch-cargo-crates_cpal-0.18.1_src_host_mod.rs b/audio/songrec/files/patch-cargo-crates_cpal-0.18.1_src_host_mod.rs
new file mode 100644
index 000000000000..003c561b1e91
--- /dev/null
+++ b/audio/songrec/files/patch-cargo-crates_cpal-0.18.1_src_host_mod.rs
@@ -0,0 +1,12 @@
+--- cargo-crates/cpal-0.18.1/src/host/mod.rs.orig 2026-06-14 22:13:07 UTC
++++ cargo-crates/cpal-0.18.1/src/host/mod.rs
+@@ -226,6 +226,9 @@ pub(crate) use error_emit::try_emit_error;
+ /// Convert a frame count at a given sample rate to a [`std::time::Duration`].
+ #[cfg(any(
+ target_os = "linux",
++ target_os = "dragonfly",
++ target_os = "freebsd",
++ target_os = "netbsd",
+ target_os = "windows",
+ target_vendor = "apple",
+ feature = "audioworklet",
diff --git a/audio/songrec/files/patch-cargo-crates_pipewire-sys-0.9.2_build.rs b/audio/songrec/files/patch-cargo-crates_pipewire-sys-0.10.0_build.rs
similarity index 74%
rename from audio/songrec/files/patch-cargo-crates_pipewire-sys-0.9.2_build.rs
rename to audio/songrec/files/patch-cargo-crates_pipewire-sys-0.10.0_build.rs
index 2c2b8f703b69..0d0ff8bd297d 100644
--- a/audio/songrec/files/patch-cargo-crates_pipewire-sys-0.9.2_build.rs
+++ b/audio/songrec/files/patch-cargo-crates_pipewire-sys-0.10.0_build.rs
@@ -1,5 +1,5 @@
---- cargo-crates/pipewire-sys-0.9.2/build.rs.orig 2026-04-19 05:10:06 UTC
-+++ cargo-crates/pipewire-sys-0.9.2/build.rs
+--- cargo-crates/pipewire-sys-0.10.0/build.rs.orig 2026-04-19 05:10:06 UTC
++++ cargo-crates/pipewire-sys-0.10.0/build.rs
@@ -20,6 +20,8 @@ fn main() {
.parse_callbacks(Box::new(bindgen::CargoCallbacks::new()))
.size_t_is_usize(true)
diff --git a/audio/songrec/files/patch-cargo-crates_pipewire-sys-0.9.2_src_lib.rs b/audio/songrec/files/patch-cargo-crates_pipewire-sys-0.10.0_src_lib.rs
similarity index 71%
rename from audio/songrec/files/patch-cargo-crates_pipewire-sys-0.9.2_src_lib.rs
rename to audio/songrec/files/patch-cargo-crates_pipewire-sys-0.10.0_src_lib.rs
index 29cfc1c0a5be..0dec32f6e01a 100644
--- a/audio/songrec/files/patch-cargo-crates_pipewire-sys-0.9.2_src_lib.rs
+++ b/audio/songrec/files/patch-cargo-crates_pipewire-sys-0.10.0_src_lib.rs
@@ -1,6 +1,6 @@
---- cargo-crates/pipewire-sys-0.9.2/src/lib.rs.orig 2026-04-19 05:10:06 UTC
-+++ cargo-crates/pipewire-sys-0.9.2/src/lib.rs
-@@ -11,6 +11,13 @@ pub use bindings::*;
+--- cargo-crates/pipewire-sys-0.10.0/src/lib.rs.orig 2006-07-24 01:21:28 UTC
++++ cargo-crates/pipewire-sys-0.10.0/src/lib.rs
+@@ -12,6 +12,13 @@ pub use bindings::*;
}
pub use bindings::*;