#1103904 ITP: pwvucontrol -- pipewire volume control

#1103904#5
Date:
2025-04-22 17:24:06 UTC
From:
To:
* Package name    : pwvucontrol
  Version         : 0.4.9
  Upstream Contact: saivert
* URL             : https://github.com/saivert/pwvucontrol
* License         : GPL-3+
  Programming Lang: Rust
  Description     : pipewire volume control

pwvucontrol is a GUI application to control pipewire sinks/sources
(similar to pavucontrol).
It features volume control, mute, media name display, card profile
selection, port selection for sinks and sources and more.

Currently, this is blocked by
https://github.com/arcnmx/wireplumber.rs/issues/35 unfortunately.

best,

werdahias
-----BEGIN PGP SIGNATURE-----

iIsEARYKADMWIQQUWTv/Sl6/b+DpcW7svtu2B7myvgUCaAfQpxUcd2VyZGFoaWFz
QGRlYmlhbi5vcmcACgkQ7L7btge5sr52pQEAmaxWmMtXRidlKYGFRnwK5eP2ZJ2j
YY9zlwZk/RHgVaQA/3lIXj1PknYcmZRKBkg6kxw1H+Ja6ryifVwUqVhJMpgD
=20d/
-----END PGP SIGNATURE-----

#1103904#26
Date:
2026-05-11 15:47:17 UTC
From:
To:
Hi,

upstream fixed this in 0.5.3.

I believed it can be packaged now; with the expection of the wireplumer
crate that likely needs to be vendored. I will likely work on this the
coming weeks, let me know if you want to co-maintain this.

best,

werdahias

#1103904#31
Date:
2026-07-26 08:07:40 UTC
From:
To:
Hey,


Just a couple of quick thoughts:


The package isn't published on crates.io. How do we solve that in debcargo-config? I guess since it'll be vendored you'll most likely create its own repo and not use debcargo-conf?


I looked at cargo debstatus for this package; here's a short summary:
```
cargo debstatus --all-features --no-dev-dependencies
 🪏  pwvucontrol v0.5.3 (in workspace, /home/obbardc/projects/git/pwvucontrol)
 🔴 ├── wireplumber v0.2.0 (git+https://github.com/saivert/wireplumber.rs.git?branch=wp-0.5-glib-0.21-pipewire-0.9#04fbbc6ea157cdd7061f6a5f2a6b22e102fccbcc)
    ├── anyhow v1.0.103 (in debian)
    ├── formatx v0.2.4 (in debian)
    ├── futures v0.3.32 (in debian)
    ├── gettext-rs v0.7.7 (in debian)
 🔽 ├── glib v0.21.5 (newer, 0.22.7 in debian)
 🔽 ├── gtk4 v0.10.3 (newer, 0.11.3 in debian)
 🔴 ├── imbl v3.0.0
 🔽 ├── libadwaita v0.8.1 (newer, 0.9.1 in debian)
    ├── log v0.4.33 (0.4.32 in debian)
    └── pipewire v0.9.2 (in debian)
```

I tried patching out the gnome deps to latest in Debian; but it failed to build with ~88 errors. I didn't go any further.


For the crate to build, I needed these B-d:
blueprint-compiler
libgdk-pixbuf-2.0-dev
libgtk-4-dev
libadwaita-1-dev
libpipewire-0.3-dev
libwireplumber-0.5-dev


Since upstream uses meson, I had to go the long way around to generate the resources etc:

meson setup builddir
meson compile -C builddir dev-schema
meson compile -C builddir blueprints
meson compile -C builddir resources_gresource

GSETTINGS_SCHEMA_DIR="$PWD/builddir/data" \
GSETTINGS_BACKEND=memory \
PWVUCONTROL_RESOURCEDIR="$PWD/builddir/data/resources" \
cargo run


Hope it's useful.


Cheers!

Chris

#1103904#36
Date:
2026-07-26 12:40:24 UTC
From:
To:
Yes, that will be vendored to debian/missing-sources.
Yeah that does seem not easily fixable.
That should happen automatically with meson build. Given upstream is
still on gtk-rs 0.10 I am considering to keep this shelved for now.
I filed https://github.com/saivert/pwvucontrol/issues/117.
The FFI bindings are not that trivial to update, and I do not want to
vendor all of gtk-rs; just the wireplumber crate.

best,

#1103904#41
Date:
2026-08-12 20:03:38 UTC
From:
To:
Hi,

upstream just fixed this, which means the only missing bit is the "imbl"
crate getting packaged.

The wireplumber-rs crate I would vendor. Let me know if you want to work
together on this.

best,

werdahias