• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

MiczFlor / RPi-Jukebox-RFID / 30048015773
56%
develop: 79%

Build:
Build:
LAST BUILD BRANCH: feature-next-and-prev-folder-cmd
DEFAULT BRANCH: develop
Ran 23 Jul 2026 09:56PM UTC
Jobs 0
Files 0
Run time –
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

Canceled at 03 Aug 2026 08:46AM UTC via web
30048015773

push

github

web-flow
Modernize Phoniebox to Trixie + PipeWire (drop Bullseye/Bookworm) (#2668)

* feat(audio): switch the audio stack to PipeWire

Pi OS Trixie ships PipeWire by default. PipeWire exposes the PulseAudio
protocol through the `pipewire-pulse` shim, so `pulsectl.Pulse(...)` and
MPD's `output { type "pulse" }` keep working without code changes.

* packages-core.txt: replace pulseaudio + pulseaudio-module-bluetooth +
  pulseaudio-utils with pipewire, pipewire-pulse, pipewire-audio,
  wireplumber, libspa-0.2-bluetooth. Keep pulseaudio-utils for the
  pactl/paplay binaries used by the audio configuration tooling.
* setup_jukebox_core.sh: remove _jukebox_core_configure_pulseaudio
  (PipeWire reads from /etc/pipewire/, not ~/.config/pulse/), drop the
  JUKEBOX_PULSE_CONFIG variable and its verify call.
* jukebox-daemon.service: drop `Requires=pulseaudio.service` and the
  pulseaudio.service entry from `After=`. Rely on `sound.target` (which
  both PulseAudio and PipeWire user sessions reach) plus mpd.service.
  The shutdown-sound timing concern that motivated the original Requires=
  is better handled at the application layer.

The shipped resources/default-settings/pulseaudio.default.pa is not
deleted: src/jukebox/run_configure_audio.py (a separate user-facing
audio-configuration tool) still references it as a template. That tool's
PipeWire compatibility is a separate, larger task — its file-edit code
paths are no-ops on PipeWire, but the pactl/sink-selection paths still
work.

* fix(volume): detect bluetooth cards via stable proplist keys

PulseMonitor._handle_event used to identify a newly connected bluetooth
card by `card_info.driver == 'module-bluez5-device.c'`, a PulseAudio
internal module name. Under PipeWire (via pipewire-pulse) the driver
string differs, so the bluetooth path silently fell through and the
device_name lookup ordering favoured the wrong proplist key.

Detect bluetooth via the proplist keys that are stable across both
stacks — `device.api == ... (continued)
Source Files on build 30048015773
Detailed source file information is not available for this build.
  • Back to Repo
  • Github Actions Build #30048015773
  • f4cb1d81 on github
  • Prev Build on future3/develop (#28327852992)
  • Next Build on future3/develop (#30307932813)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc