I am using Fedora KDE 41. I have never had this issue. I could easily share my entire screen or a specific window. Now, when I try to share my screen, on Google meet, for example, it keeps telling me “Failed to connect PipeWire context”. I attempted purging user files and reinstalling it. It is hell-bent on giving me this error. Any idea what I am doing wrong?
UPDATE: I tested with my backup user, which I created just in case, but pretty much left uncustomized. It works there. How can I reset it?
If you think an update caused the problem, you should be able to undo the update. dnf history list should show you when you last ran updates and you can query it further to find out exactly which packages were updated.
My bad, I edited my answer. Since it works on my other user, I don’t think it is because of an update. I just don’t know how I can reset it its settings back to default.
If you create a new user account does the new account have the problem? If not, you might just use a new account and try to migrate things from the broken account if you can.
Most (but not all) local user application settings are stored under ~/.config. Older applications sometimes have a .<something> file or directory directly under ~. You will probably want to make a backup of ~/.config before you start messing with it.
If the backup user works then it seems something in the configs located in the users home directory. You might try removing the pipewire configs found under your home directory. With the new user you could find out what is there using find .local -name pipewire* then compare that to what is found with your regular user.
If you remove the pipewire config files then reboot the next time you use pipewire it will create the default config files that probably would match those for your back up user.
The problem is that I purged pipewire/wireplumber config files multiple times and reinstalled it. In my .config folder, searching pipewire yields a folder called “pipewire.service.wants” and several files pipewire.something in .config/systemd/user
I am fairly certain that the default settings are configured correctly. Howevere, it won’t help if there is no way to actually reset them… Can’t I just copy the configuration from the other user? If yes, which folders?
You do not want to purge the settings there. What you should do there is disable the service so it operates as default. sudo systemctl --user disable pipewire.service would reset it to the default.
When you reboot it then should operate normally.
That is an informative message and shows how pipewire.service is started. That is to be expected in this case…
If you read the output of systemctl --user status pipewire.service you see the trigger shown. TriggeredBy: ● pipewire.socket
This is the default setting for pipewire.socket
$ systemctl --user status pipewire.socket
● pipewire.socket - PipeWire Multimedia System Sockets
Loaded: loaded (/usr/lib/systemd/user/pipewire.socket; enabled; preset: enabled)
Active: active (running) since Tue 2024-12-17 13:47:21 CST; 1 day 18h ago
Invocation: 85655c83640b48ec85ab6e493b0878a5
Triggers: ● pipewire.service
Listen: /run/user/1000/pipewire-0 (Stream)
/run/user/1000/pipewire-0-manager (Stream)
CGroup: /user.slice/user-1000.slice/user@1000.service/app.slice/pipewire.socket
It is (and should be) enabled by default.
Note that the socket is intended to trigger the service and it must be done that way so the service properly connects to the socket. Things will not work if done in an incorrect order.
User settings for each individual user are under their home directories.
System settings for all users are managed by systemctl as noted above (and in most cases should not be modified).
If you want to copy the user settings that may be the wrong approach. Each user gets the personal settings the first time they activate the pipewire/wireplumber service and those are written by the services into the users home directory structure.
On my system I find nothing about pipewire as personal config files except under ~/.local/share/flatpak/
So, is there no way to fix this then? If resetting it back to default doesn’t exist as an option and I cannot copy over user files from another user, what are my options then?
Long story short, how can I make it return to a fresh state, like I made a new account? Looks like terminal is useless here, so far.
You did not say whether you rebooted after running the systemctl command to disable pipewire.service. That was mandatory to restart everything in default mode.
You also have not updated us on any changes you may have made since doing that nor any specific symptoms that are now showing.
The reset of enabled to disabled for that service is resetting it back to default. What makes you believe it was not reset?