How to configure Pipewire to listen to Line-In on EndeavourOS boot?

Hello, I’m trying to find the Pipewire config file so I can configure it to loopback line-in but it doesn’t exist.

It should be located in… /usr/share/pipewire/pipewire.conf

And welcome aboard! :enos:

The PipeWire package provides an initial set of configuration files in /usr/share/pipewire. You should not edit these files directly, as package updates will overwrite your changes. To configure PipeWire, you can copy files from /usr/share/pipewire to the alternate system-wide location /etc/pipewire, or to the user location ~/.config/pipewire. An equally named file in a directory with a higher precedence makes the analogous files ignored. [1]

https://wiki.archlinux.org/title/PipeWire#Configuration

2 Likes

How do you configure pipewire to run pactl load-module module-loopback on system start?

Try this and see if it will work.

  1. create ~/.config/pipewire directory: mkdir ~/.config/pipewire

  2. create a file named pipewire-pulse.conf in that directory with the following content:

context.exec = [
{ path = "pactl", args = ["load-module", "module-loopback"] }
]
  1. restart pipewire: systemctl --user restart pipewire.service

Hope this helps!

1 Like

It didn’t help sadly, when I make the newly created pipewire-pulse.conf in ~/.config/pipewire and have the following content be only
context.exec = [
{ path = “pactl”, args = [“load-module”, “module-loopback”] }
]
and restart my computer (because restarting pipewire didn’t fix it), it makes me not have any audio. I tried copying the original pipewire-pulse.conf from /usr/share/pipewire and pasting it to ~/.config/pipewire and adding at the end the same content.exec and restarting my computer, but it didn’t work.

1 Like

Not sure if I got the syntax wrong. Change the part above to:

args = ["load-module module-loopback"]

in ~/.config/pipewire/pipewire-pulse.conf and restart pipewire as per the command line posted above.

If it still is not working, I hope someone with more knowledge in this area will step in and assist you.

2 Likes

I had to also remove the brackets so it would work and look like this,

context.exec = [
{ path = “pactl”, args = “load-module module-loopback” }
]

I thank you for leading me into the right direction.

For people who also have this problem, copy the pipewire-pulse.conf file from /usr/share/pipewire and paste it into ~/.config/pipewire, if the folder doesn’t exist, create one with mkdir ~/.config/pipewire in the terminal (Konsole) or with File Manager (Dolphin), then add at the end of the file

context.exec = [
{ path = “pactl”, args = “load-module module-loopback” }
]

and restart your computer.

3 Likes

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.