Rockbox open source high quality audio player as a Music Player Daemon
mpris rockbox mpd libadwaita audio rust zig deno
2
fork

Configure Feed

Select the types of activity you want to include in your feed.

Bump release to 2026.04.20

Update README download links and Debian control package
versions; update deno submodule commit; apply small formatting
tweaks in artists.rs and audio_scan.rs

+11 -13
+4 -4
README.md
··· 110 110 ## 📦 Downloads 111 111 112 112 - `Linux`: intel: 113 - [rockbox_2026.04.19_x86_64-linux.tar.gz](https://github.com/tsirysndr/rockbox-zig/releases/download/2026.04.19/rockbox_2026.04.19_x86_64-linux.tar.gz) 113 + [rockbox_2026.04.20_x86_64-linux.tar.gz](https://github.com/tsirysndr/rockbox-zig/releases/download/2026.04.20/rockbox_2026.04.20_x86_64-linux.tar.gz) 114 114 arm64: 115 - [rockbox_2026.04.19_aarch64-linux.tar.gz](https://github.com/tsirysndr/rockbox-zig/releases/download/2026.04.19/rockbox_2026.04.19_aarch64-linux.tar.gz) 115 + [rockbox_2026.04.20_aarch64-linux.tar.gz](https://github.com/tsirysndr/rockbox-zig/releases/download/2026.04.20/rockbox_2026.04.20_aarch64-linux.tar.gz) 116 116 - `macOS`: intel: 117 - [rockbox-2026.04.19-x86_64.pkg](https://github.com/tsirysndr/rockbox-zig/releases/download/2026.04.19/rockbox-2026.04.19-x86_64.pkg) 117 + [rockbox-2026.04.20-x86_64.pkg](https://github.com/tsirysndr/rockbox-zig/releases/download/2026.04.20/rockbox-2026.04.20-x86_64.pkg) 118 118 arm64: 119 - [rockbox-2026.04.19-aarch64.pkg](https://github.com/tsirysndr/rockbox-zig/releases/download/2026.04.19/rockbox-2026.04.19-aarch64.pkg) 119 + [rockbox-2026.04.20-aarch64.pkg](https://github.com/tsirysndr/rockbox-zig/releases/download/2026.04.20/rockbox-2026.04.20-aarch64.pkg) 120 120 121 121 ## 🧙‍♂️ Systemd Service 122 122
+1 -2
crates/library/src/artists.rs
··· 72 72 println!("Updating artist: {}", artist.name.bright_green()); 73 73 let artist_id = artist.id; 74 74 if let Some(artist) = artist_map.get(&artist.name) { 75 - repo::artist::update_genres(&pool, &artist_id, &artist.genres.join(", ")) 76 - .await?; 75 + repo::artist::update_genres(&pool, &artist_id, &artist.genres.join(", ")).await?; 77 76 if let Some(picture) = artist.picture.clone() { 78 77 repo::artist::update_picture(&pool, &artist_id, &picture).await?; 79 78 }
+4 -5
crates/library/src/audio_scan.rs
··· 112 112 113 113 // Run C FFI call on blocking thread pool to avoid thread-safety issues 114 114 let metadata_path_owned = metadata_path.to_string(); 115 - let entry = tokio::task::spawn_blocking(move || { 116 - rb::metadata::get_metadata(-1, &metadata_path_owned) 117 - }) 118 - .await 119 - .map_err(|e| anyhow!("Failed to get metadata: {}", e))?; 115 + let entry = 116 + tokio::task::spawn_blocking(move || rb::metadata::get_metadata(-1, &metadata_path_owned)) 117 + .await 118 + .map_err(|e| anyhow!("Failed to get metadata: {}", e))?; 120 119 121 120 let title = track_title(&entry, path); 122 121 let artist = track_artist(&entry);
+1 -1
dist/debian/amd64/DEBIAN/control
··· 1 1 Package: rockbox 2 - Version: 2026.04.19 2 + Version: 2026.04.20 3 3 Section: user/multimedia 4 4 Priority: optional 5 5 Architecture: amd64
+1 -1
dist/debian/arm64/DEBIAN/control
··· 1 1 Package: rockbox 2 - Version: 2026.04.19 2 + Version: 2026.04.20 3 3 Section: user/multimedia 4 4 Priority: optional 5 5 Architecture: arm64