Talk:PipeWire: Difference between revisions

From NixOS Wiki
Latest comment: 10 May by Akaihola in topic Wireplumber configuration example discrepancies
imported>Mbledkowski
Created page with " - The option definition `services.pipewire.config' in `/etc/nixos/configuration.nix' no longer has any effect; please remove it. Overriding default Pipewire conf..."
 
No edit summary
 
(5 intermediate revisions by the same user not shown)
Line 2: Line 2:
       Overriding default Pipewire configuration through NixOS options never worked correctly and is no longer supported.
       Overriding default Pipewire configuration through NixOS options never worked correctly and is no longer supported.
       Please create drop-in files in /etc/pipewire/pipewire.conf.d/ to make the desired setting changes instead.
       Please create drop-in files in /etc/pipewire/pipewire.conf.d/ to make the desired setting changes instead.
== Wireplumber configuration example discrepancies ==
The configuration examples for wireplumber have confusing differences compared to [https://pipewire.pages.freedesktop.org/wireplumber/daemon/configuration/bluetooth.html Wireplumber Bluetooth configuration documentation]. For example this one on the wiki page:
<pre>
environment.etc = {
"wireplumber/bluetooth.lua.d/51-bluez-config.lua".text = ''
bluez_monitor.properties = {
["bluez5.enable-sbc-xq"] = true,
["bluez5.enable-msbc"] = true,
["bluez5.enable-hw-volume"] = true,
["bluez5.headset-roles"] = "[ hsp_hs hsp_ag hfp_hf hfp_ag ]"
}
'';
};
</pre>
The differences are:
# Instead of <code>bluez_monitor.properties</code>,<br>Wireplumber documentation uses <code>monitor.bluez.properties</code>.
# Instead of <code>["bracketed.and.quoted.property.names"]</code>,<br>Wireplumber documentation uses <code>plain.property.names</code>.
# Instead of ending each property line with a comma (<code>... = true,</code>),<br>Wireplumber documentation omits the comma (<code>... = true</code>).
[[User:Akaihola|Akaihola]] ([[User talk:Akaihola|talk]]) 19:30, 10 May 2024 (UTC)
:Ah, [https://pipewire.pages.freedesktop.org/wireplumber/daemon/configuration/migration.html Pipewire configuration format changed between versions 0.4 and 0.5], and NixOS 23.11 has:
<pre>
$ wireplumber --version
wireplumber
Compiled with libwireplumber 0.4.17
Linked with libwireplumber 0.4.17
$ ls -l `which wpctl`
lrwxrwxrwx 1 root root 72  1. 1.  1970 /run/current-system/sw/bin/wpctl -> /nix/store/a13fw6xw8fmpf39blrp86w6r7nkfrim5-wireplumber-0.4.17/bin/wpctl
</pre>
:[[User:Akaihola|Akaihola]] ([[User talk:Akaihola|talk]]) 19:40, 10 May 2024 (UTC)
::(Although I don't yet understand why I still get:)
<pre>
$ nix derivation show 'nixpkgs#wireplumber'
{
  "/nix/store/cawvgg6wk42xmhpg2dm0ax9hxbxfdsfm-wireplumber-0.5.2.drv": {
[...]
</pre>
:[[User:Akaihola|Akaihola]] ([[User talk:Akaihola|talk]]) 19:48, 10 May 2024 (UTC)

Latest revision as of 09:15, 11 May 2024

      - The option definition `services.pipewire.config' in `/etc/nixos/configuration.nix' no longer has any effect; please remove it.
      Overriding default Pipewire configuration through NixOS options never worked correctly and is no longer supported.
      Please create drop-in files in /etc/pipewire/pipewire.conf.d/ to make the desired setting changes instead.

Wireplumber configuration example discrepancies

The configuration examples for wireplumber have confusing differences compared to Wireplumber Bluetooth configuration documentation. For example this one on the wiki page:

environment.etc = {
	"wireplumber/bluetooth.lua.d/51-bluez-config.lua".text = ''
		bluez_monitor.properties = {
			["bluez5.enable-sbc-xq"] = true,
			["bluez5.enable-msbc"] = true,
			["bluez5.enable-hw-volume"] = true,
			["bluez5.headset-roles"] = "[ hsp_hs hsp_ag hfp_hf hfp_ag ]"
		}
	'';
};

The differences are:

  1. Instead of bluez_monitor.properties,
    Wireplumber documentation uses monitor.bluez.properties.
  2. Instead of ["bracketed.and.quoted.property.names"],
    Wireplumber documentation uses plain.property.names.
  3. Instead of ending each property line with a comma (... = true,),
    Wireplumber documentation omits the comma (... = true).

Akaihola (talk) 19:30, 10 May 2024 (UTC)Reply

Ah, Pipewire configuration format changed between versions 0.4 and 0.5, and NixOS 23.11 has:
$ wireplumber --version
wireplumber
Compiled with libwireplumber 0.4.17
Linked with libwireplumber 0.4.17
$ ls -l `which wpctl`
lrwxrwxrwx 1 root root 72  1. 1.  1970 /run/current-system/sw/bin/wpctl -> /nix/store/a13fw6xw8fmpf39blrp86w6r7nkfrim5-wireplumber-0.4.17/bin/wpctl
Akaihola (talk) 19:40, 10 May 2024 (UTC)Reply
(Although I don't yet understand why I still get:)
$ nix derivation show 'nixpkgs#wireplumber'
{
  "/nix/store/cawvgg6wk42xmhpg2dm0ax9hxbxfdsfm-wireplumber-0.5.2.drv": {
[...]
Akaihola (talk) 19:48, 10 May 2024 (UTC)Reply