Hey, so I am losing my mind here. I can NOT get rid of this severe popping and crackling I get on all audio on all sources and all outputs. I am running pipewire as the audio system but I just cant get it to stop. I have already altered my pipewire.conf as seems to be the only thing the internet at large will ever recommend, it has ZERO effect. as an example...
default.clock.quantum = 4096
default.clock.min-quantum = 4096
default.clock.max-quantum = 8192
I have used values starting at 16 and doubled it every time and tested it up to some pretty massive values, 8192 so far and nothing. Below is the output of pw-top just so you know I am not joking as to the values I have tried.
ID QUANT RATE WAIT BUSY W/Q B/Q ERR FORMAT NAME
R 56 4096 48000 55.0us 11.1us 0.00 0.00 0 S16LE 2 48000 alsa_output.pci
R 61 3600 48000 22.9us 19.5us 0.00 0.00 0 F32LE 2 48000 + Firefox
Ive tried dozens of different value, I've tried different rates, nothing. I have already posted on Reddit, that didn't help because as soon as I tried the values and that didn't work, no one ever responded again.
For completeness, I am running in a VM but it's a unique situation. I am running an Arch guest on a Slackware host. I have a dedicated GPU passed through properly and it does indeed have multi-function enabled. I am running an AMD 7950X with half the cores dedicated to the gaming VM and the other half left for the host as it pulls double duty as a storage, container, and virtualization host. I have 64GB of DDR5 and it is running at 6000 with even matching the XMP profile. The system is under very little load during testing but it makes zero difference what the load is anyway.
As a sanity check I spun up a Windows VM with identical settings except for the TPM stuff and it ran fine. I used to run pop_OS for a short time and I don't recall this ever being an issue there but it's been a while. However, if it were doing it there, I would have noticed.
I predominantly use this setup in my living room as a gaming centric VM that also pulls double duty as a Media center type thing so the audio issues are a deal breaker. I do this since this just happens to be where my server and the desk shelf are located, in the living room, so it makes sense to use this kind of setup. 9x out of 10 I am using the HDMI output of the nVidia 3070 TI but I do use a USB DAC and I have tested it. I also have tested Bluetooth output which seems ALMOST unaffected but laggy by almost a second or more so essentially unusable so I stick with the USB DAC instead if I need to use headphones. I could have sworn I head the pops just quietly when Bluetooth audio was playing but I could have been imagining it.
Please help, I am at my wits end, google, Arch wiki, driver updates, downgrades, betas, different kernels, I have tried everything I can possibly think of and nothing works.
Any help you guys can provide would be purely awesome. I have been using Arch now for maybe 5-6 months now and I am getting used to it and starting to really love what it is but this audio issues has been a thorn in my side the whole time and I am about ready to start distro hopping to try and find something that doesn't have this issue. Please, help!
Thanks!
Hello, I'm facing some rather annoying issues with running KDE6 on Wayland. Despite consulting the Arch Wiki and various online resources, I haven't been able to get it working. X11 works fine, so I've been sticking with X exclusively due to my limited experience with desktop Linux and troubleshooting.
For context, my setup includes an AMD 7950x with Unraid as the main OS. My daily desktop runs on a mainline Arch VM with an RTX 3070ti and a dedicated USB controller card passed through. This setup has been stable for months, serving my gaming and media needs.
When attempting a Wayland session, I select it, observe a brief black screen flash, and then return to the login prompt. This issue persisted through upgrades and tests on different distributions like Manjaro and Endeavor. I've also tried multiple Wayland compositors, all with the same outcome.
The only success I've had with Wayland was on Garuda, which defaults to Wayland. I'm keen on using Wayland due to its evolving features, especially since it's essential for running Waydroid.
Any assistance would be greatly appreciated. While my use case may be unique, Waydroid is crucial for specific Android apps vital to my workflow.
Thanks in advance!
https://pixelfed.de/p/cammelspit/657887422594974310
After using my Steam Deck for over a year, I had an idea regarding network storage when I was installing Emu Deck. Despite the portability of the Steam Deck, I wanted to mount ROMs, Media, and even a Steam Library from a network-attached storage (NAS) device at home.
Recently, due to health reasons, I find myself bed-bound, making the Steam Deck a great companion. However, It's storage options are rather limited so I attempted to find a solution.
I faced challenges due to SteamOS's immutable file system. To overcome these I explored using NFS shares for a Steam Library, as Samba shares had limitations and wouldnt work on Linux for a Steam Library. Mounting NFS shares worked as long as i used a specific option to make the files executable.
To automate this process I created a systemd service that loads on boot, triggering a script to mount the shares. However, SteamOS's immutable file system posed challenges for typical auto-start methods like the KDE autostart tool and especially fstab.
The key was leveraging the service that loads even in in gamemode so you wont have to do anything manually, not even switch to desktop mode at all. The solution involved that service checking network connectivity before mounting the shares. This ensures the script doesn't run before the wifi comes up, if it has no connectivity it rechecks every 30 seconds for connectivity until it does. Once this happens, the mount script itself is run. On a wired connectionwhile docked the mount is ready before Steam even loads for me so this hasnt been an issue but I felt it was a problem i needed to solve before putting it into production.
I've shared the service file and script as well as a handy script that I used to unmount those same shares during testing, noting that hard-coded paths will need to be modified. The script also logs successful and unsuccessful mounts for debugging but i liked the feature so i left it. Although not the final version, it offers a functional solution for now.
If you use Unraid, the script includes paths relevant to its shares. Server IP, share list, and mount points Will need to be modified to fit your needs or it likely won't work. The script lacks support for authenticated shares, but it persists between reboots and has shown reliability in my testing. I also realize that the script is basically just dumped on my desktop, that's where I created it and the pads are hard coded and I just don't care to change it so if you want it somewhere else you're going to have to do that alteration yourself.
Feel free to modify it or share improved versions and above all, have fun!!
#!/bin/sh
NFS_SERVER=10.10.10.99
SHARE_PATH="/mnt/user"
SHARES=("Media" "Emulation" "Steam" "Downloads" "DUMPBOX" "isos" "NSFWMedia" "Software" "Tools")
# Set up log file
LOG_FILE="/home/deck/Desktop/netmount.log"
# Loop through the shares and mount each one with -o exec
for SHARE_NAME in "${SHARES[@]}"; do
MOUNT_POINT="/home/deck/mounts/$SHARE_NAME"
mkdir -p $MOUNT_POINT # Create the mount point directory
TIMESTAMP=$(date +"%Y-%m-%d %H:%M:%S")
mount -t nfs -o exec $NFS_SERVER:$SHARE_PATH/$SHARE_NAME $MOUNT_POINT
# Log the results with timestamps
if [ $? -eq 0 ]; then
echo "$TIMESTAMP: NFS share '$SHARE_NAME' mounted successfully at $MOUNT_POINT" >> $LOG_FILE
else
echo "$TIMESTAMP: Failed to mount NFS share '$SHARE_NAME'" >> $LOG_FILE
fi
done
#!/bin/sh
# Unmount all NFS shares
for MOUNT_POINT in /home/deck/mounts/*; do
umount $MOUNT_POINT
done
echo "All NFS shares unmounted."
[Unit]
Description=Netmount Script at Boot
After=graphical.target
[Service]
Type=simple
ExecStart=/bin/sh -c 'for i in {1..20}; do ping -c 1 google.com && /home/deck/Desktop/netmount.sh && break || sleep 30; done'
[Install]
WantedBy=default.target
You can use these clean versions for your scripts and service file. Adjust paths and configurations as needed.
@cammelspit
@lemm.ee