Linux - Reddit – Telegram
Linux - Reddit
778 subscribers
4.19K photos
207 videos
39.9K links
Stay up-to-date with everything Linux!
Content directly fetched from the subreddit just for you.

Powered by : @r_channels
Download Telegram
Meet AnduinOS - a custom Ubuntu-based Windows 11-like Linux distribution developed by a Microsoft engineer.
https://www.anduinos.com/

https://redd.it/1khy5nl
@r_linux
Is there finally any GUI to quickly set audio settings? (any distro)

Hi. I've been following how desktop Linux progresses for more than 10 years now. Is there finally any GUI tool where you can set various audio device properties, like bit depth, sample rate, noise cancellation (for microphone), channel balance, channel count, equalizer? After half hour of searching I haven't been able to find any alternative to Windows or Mac sound settings. I know there are command line tools and config files but I haven't seen any proper GUI yet.

https://redd.it/1ki3vo1
@r_linux
(grub/dracut) Can someone explain me, what happened?

IMPORTANT: This is not asking for help (not an issue anymore). But maybe explaining what happened so I can learn from it? I want to share a funny story, which got me confused in the end. If anyone knows WHY this happened- I would be happy to hear.

First things first: I'm using garuda linux with grub and dracut as the initramfs-tool. I use btrfs and my system also comes with grub-btrfs, which according to github only provides snapshot booting from grub itself and it SHOULDN'T manipulate my default boot choices.

So: I got 3 kernels- zen, mainline and rc. And they take a lot of space in /boot

First thing I wanted to do is extend /boot, so I had to shrink my root partition. Thing is- my root partition is encrypted with the old LUKS1 instead of LUKS2, which makes shrinking the partition impossible.

So I thought "well, each initramfs is over 250MB, so- why not just exclude unnecessary drivers like my iGPU AMD driver or some other stuff I don't need. I also read, that you ONLY need to include drivers in the initramfs which are necessary for boot- so I figured "I don't need wifi and ethernet before userspace" and just excluded them to save as much space as possible.

Then I built my new initramfs and it seems to work.

Then, two weeks later, during systemd-anaylse to see why my system takes a long time to boot, I noticed that my generated grub-config points to a btrfs snapshot of my root partition, instead of my raw root partition.

I noticed because my cmdline was

BOOTIMAGE=/vmlinuz-linux-zen root=UUID=2b323d09-9d7c-4d25-90c8-669affba6d93 rw rootflags=subvol=timeshift-btrfs/snapshots/2025-04-2914-38-59/@ rd.luks.uuid=015628c5-ef3b-437f-83aa-7808ca43135d rd.luks.uuid=b812c7bf-201f-4aeb-8ca0-41ce41b614a5 rd.luks.options=timeout=5 resume=/dev/mapper/luks-b812c7bf-201f-4aeb-8ca0-41ce41b614a5 loglevel=3 splash nvidia-drm.modeset=1 quiet tpmtis.interrupts=0 ibt=off

My rootflags pointed to `subvol=timeshift-btrfs/snapshots/
2025-04-2914-38-59/@

Wait, since when is my cmdline pointing to a btrfs-snapshot of my system?!

And that got me confused- since making snapshots kept working- and my updates stayed- so

I was so confused-

I checked my
/etc/default/grub, but my GRUBCMDLINELINUXDEFAULT` didn't include ANYTHING with rootflags- nothing under `/etc/default/grub` or `/etc/grub/` included a `rootflags`.

So I just thought "Okay? Lemme force it to boot into my normal live system?" And added `rootflags=subvol=@` to my `GRUB
CMDLINELINUXDEFAULT.

But then I ended up in emergency mode. In emergency mode, I checked my
/boot/grub/grub.cfg and noticed that now two rootflags were present. So something is injecting the snapshot rootflag into my config. But what? At this point I noticed that \grub-btrfs` exists and checked the github- looked into the issues tab to see if anyone got something similar? And I found something interesting: The developer of grub-btrfs says that it would never mess with your default grub config and "only add the snapshot list". Or did I misunderstand that?

At this point, I didn't care and just wanted to reset everything-

Sooo- I checked my modified /etc/dracut.conf\- but it was- not modified- maybe because I was still in that old snapshot before I edited my dracut.conf?

"Huh, well, let me rebuild my kernel modules with this clean config", I thought- but my Kernel was already 6.14.5-zen1-1-zen, which didn't exist under /lib/modules, so I couldn't rebuild the modules. And my system was still in emergency mode on life support, not even mounting my efi partition worked there. And I had no network, nothing.

I managed to fix my system, re-gain network, reinstalled the kernel modules, rebuilt the initramfs with dracut, rebooted and now everything seems to work again- booting from the original @ subvolume on my live nvme.

TL;DR:

1. I adjusted my dracut config to minimize my initramfs size
2. I rebooted and it "worked" (it rebooted from my last working snapshot instead my normal system)
3. I figured out that it would boot from the
snapshot after 1.5 weeks
4. I tried booting from the live system, but it was broken due to the drivers In the end, I fixed it-

I'm still confused about HOW grub decided to boot into the snapshot with my normal boot choice (which would be the live system). Where did the rootflags=@/timeshift-btrfs/snapshots... come from?

And how do I make sure that my default and first grub-entry never points to a snapshot?

Thanks for reading my story! I'd love to discuss/learn with you about my experience.

https://redd.it/1ki6us2
@r_linux
I have now achieved chim
https://redd.it/1ki9lxw
@r_linux
A naughty PAM module

Hey,

inspired by the insults feature in sudo, I went ahead and created a simple PAM module that prints an insult when an PAM authentication fails. So, whenever you enter a wrong user password in the terminal, you will get insulted.

Let me know what you think about it and feedback is very much appreciated if not even encouraged.

https://github.com/cgoesche/pam-insults


https://redd.it/1ki7vrc
@r_linux
How to create a surround setup by combining different speakers GUIDE

Howdy y'all!

I've used Linux quite a fair bit for my homelab, but recently I decided to embark my main desktop on the open-source train. With this change, I also needed to migrate my audio solution over to Linux.

I'm currently using Yamaha HS8's through a Behringer audio interface as my front channels, and a Logitech 5.1 Surround setup as my Centre/LFE, Sides and Rears. I achieved this using Voicemeeter on Windows, but as you may know, this doesn't quite exist on Linux. Pulsemeeter has nowhere near this capability either.

After hours of playing around and many re-installs of the entire audio system, I finally found a way to get it working! I'd figured I'd share just in case someone else out there would like to create a full surround setup using whatever speakers they may have lying around. I tried finding any guides online that could potentially detail how to do this, but to no avail. So here it goes!

PLEASE NOTE, THIS GUIDE WAS WRITTEN FOR MANJARO INITIALLY BUT SHOULD BE APPLICABLE TO MOST DISTROS

This guide is also done mostly by walking back through the steps I took, so if anything is missing, please let me know!

Here's a screenshot of my prior audio settings!

https://preview.redd.it/eox4dwikwoze1.png?width=1647&format=png&auto=webp&s=680ea82dfdde999faf78c78eac6b8630850e436b

(https://preview.redd.it/how-to-create-a-surround-setup-by-combining-different-v0-oj51bvf3soze1.png?width=1647&format=png&auto=webp&s=19b72b09a3cc26c0a5258843b4debaec14cdd552)

The goal is to combine the "Line Out" audio output (Which has my Centre/LFE, sides and rear channels) and the "UMC404 192k" audio output (Which has my front channels)

PREREQUISITES

ALL OF THIS IS IN TERMS OF A GUI, AS APPLICATIONS WILL BE RUN.

You can look up the CLI commands to do everything, but I'm incredibly lazy :)

This solution uses PulseAudio to combine simultaneous outputs, and to remap the channels according to what speakers you have plugged in. You will need PulseAudio and ALSA capabilities. These are available through the package manager, or you can install this using the terminal with whatever package manager your Distro ships with.

pulseaudio
pulseaudio-alsa
pavucontrol
hdajackrestask
pipewire-server (If your distro comes with pipewire by default, most do. This just handles the preference of pulse audio in the case of Manjaro)
Some speakers (hopefully)

If your distro comes with pipewire, you'll need to disable pipewire entirely. This is due to the case of either Pulse or Pipewire becoming suspended, neither will be able to wake up and you will lose audio.

RE-ASSIGNING THE AUDIO JACKS

The first step will be to re-assign the audio jacks on the motherboard accordingly. This is where hdajackrestask comes in

https://preview.redd.it/je9lkm3nwoze1.png?width=618&format=png&auto=webp&s=c483a4dd0098d9bf3e120b0b036a374bd8f826d1

(https://preview.redd.it/how-to-create-a-surround-setup-by-combining-different-v0-y75puvy8roze1.png?width=618&format=png&auto=webp&s=c6c78d97a607220aac208ace5974923ce35ec76b)

Using hdajackretask, I was able to shift around what outputs on the back of my motherboard were for what channel. Since my studio monitors are my front channels, the "fronts" that came with my Logitech 5.1 setup are plugged in as side channels to create a full 7.1

So, I assigned the "Blue Line In" to be the side channel, the "Orange" to still be the Centre/LFE (Just to confirm that this was assigned correctly, orange is usually this by default) and Black to be the rear channels or "Back".

hdajackrestask won't let you apply this unless it detects a front channel. In this example, I just set the "Green Line In" to be the front channel, but I only have a dummy 3.5mm cable plugged into it with nothing attached. (This is because Windows Jack auto-detection destroyed my 7.1 setup at some point, you probably don't need a dummy plug for Linux)

The "Apply Now" button never worked for me, but please try that first. "Install boot override" will be the last button you
press, and upon restarting, you should now be able to select the "7.1" option in the audio settings for that line out device.

SCREENSHOT BEFORE RETASKING:

https://preview.redd.it/321izs3owoze1.png?width=215&format=png&auto=webp&s=cdd1b3ad3a5e7a1649daffd69e8c88cab6083c36

(https://preview.redd.it/how-to-create-a-surround-setup-by-combining-different-v0-2ambt9zjsoze1.png?width=215&format=png&auto=webp&s=dacd3ac987d13da6c6c0f90751ee5a5422ab1a41)

SCREENSHOT AFTER RETASKING:|

https://preview.redd.it/hf8tiyxowoze1.png?width=212&format=png&auto=webp&s=1e5078eaa701f12e6adb9741d04c075dd868a63e

(https://preview.redd.it/how-to-create-a-surround-setup-by-combining-different-v0-79c6d8vmsoze1.png?width=212&format=png&auto=webp&s=4fc268dd273b2489b6c74c58b37d6680c7b2194f)

Once you've selected the 7.1 Output option, we will need to enable simultaneous outputs via Pulse. This is where you will use "pavucontrol".

Open PulseAudio Preferences, and click the "Simultaneous Output" tab. Ticking "Add virtual output device for simultaneous output on all local sound cards" will allow us to later combine the two different outputs.

https://preview.redd.it/jvyk1zzpwoze1.png?width=631&format=png&auto=webp&s=0cd6de1bb4ec0a779d5821707b7d6eca94eac264

(https://preview.redd.it/how-to-create-a-surround-setup-by-combining-different-v0-3ncuk2a1toze1.png?width=631&format=png&auto=webp&s=32c48a3aedeff89d5bcddb3aed5cbdbc8ac9446e)

Now, we will need to do some terminal magic.

We will now combine the two audio outputs using "pacmd". One of the devices will be the master of the combination and the other will be a slave device.

Obviously my audio interface was stereo and my Logitech device was surround. If I set one or the other as the master, it would always default to which device has the least amount of channels. In this case, my audio interface is only capable of stereo, so the combination would only output stereo.

Pulse will only output whatever the lowest audio device in the combination is capable of (This also applies to sample rate and bit-depth, so please be mindful if you are using differing audio interfaces that they are capable of the same sample rate. It's ideal to leave these at 44100 or 44800)

To counter this, we will need to remap the stereo source as 7.1, so it is treated as a 7.1 device. Obviously, sound will only come out of the two speakers and no other channels can be heard because my audio interface doesn't have the 6 other channels plugged in.

First, we will need to find the name of the "sink". This is what Pulse calls the audio devices. Use the follow command to list the sinks:

pacmd list-sinks | grep name:

This will output something similar to this:

https://preview.redd.it/0tbp2q5rwoze1.png?width=780&format=png&auto=webp&s=13edfae19863b7721466405f84c82c5e75b4b4c9

(https://preview.redd.it/how-to-create-a-surround-setup-by-combining-different-v0-ccova9g1uoze1.png?width=780&format=png&auto=webp&s=aea0650a33c110898c47f634eca8f738a8d607fe)

In this case, I want "alsa_output.usb-BEHRINGER_UMC404_192k-00.analog-surround-40" to be seen as a 7.1 device, rather than just stereo.

Using this command, we are able to tell Pulse that my Behringer interface is a "7.1" device.

pacmd load-module module-remap-sink sink_name=remap71 master=alsa_output.usb-BEHRINGER_UMC404_192k-00.analog-surround-40 channels=8 channel_map=front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right master_channel_map=front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right remix=yes

This will add 8 channels and re-map the channels to include FL, FR, CE/LFE, RL RR, SR and SL. This remapped audio output will be labelled as the "remap71" sink.

Remix is used to upmix stereo sources into 7.1. This doesn't work in the traditional sense of upmixing, as the channels are still separated based on audio source. So if you are listening to 5.1 audio, it will correctly use the 5.1 channels, but if you are just listening to stereo, this will be upmixed to 7.1 as required.

Now that my audio interface is seen as
a "7.1" device labelled "remap71", we can combine this with the Logitech audio output to mesh the two together (with no latency!)

Use the following command to create a new audio output named "SurroundCombine" and a corresponding sink called "SurroundComb"

pacmd load-module module-combine-sink sink_name=SurroundComb sink_properties=device.denoscription=SurroundCombine slaves=alsa_output.pci-0000_0c_00.4.analog-surround-71,remap71 channels=8 remix=yes

No remapping required, as we previously setup both audio outputs to display as 7.1!

Now set this as the default sink, and you should now have full 7.1 audio with two separate audio devices!

pacmd set-default-sink SurroundComb

And there you have it! You should be able to test your audio and have the speakers correspond correctly. I've tested this with a few different audio devices plugged in and as long as the audio device itself can decode what it needs to (in this case, my audio interface knows it has stereo speakers and my motherboard itself can handle 7.1 audio), this should hopefully work across a range of combinations!

Now, this will wipe the next time you restart your device, as Pulse sets defaults each time your device is reset. You can set this back up again by just re-entering the commands into terminal. Or, in theory, if you comment out the following line from /etc/pulse/default.pa

load-module module-default-device-restore

Then this shouldn't reload by default. Unfortunately, this doesn't work for myself but it does work for some people. I'm currently working on a bash noscript to run on startup to re-create this surround setup, but Pulse isn't playing nice. I might update this thread with the noscript if I do get it working though!

Hope this helps someone out and saves them a bunch of time, it took me AGES to figure this out. Thanks to the Linux community for providing answers on various forums on what commands to use for what! Here's some sources I used:

https://unix.stackexchange.com/questions/748775/front-center-mapped-as-lfe-lfe-as-front-center-on-my-5-1-debian-12

https://unix.stackexchange.com/questions/396185/pulseaudio-use-both-hdmi-stereo-and-5-1-simultaneously

https://forum.manjaro.org/t/how-to-enable-analog-surround-sound/42704/8

https://www.reddit.com/r/linuxquestions/comments/6gnuo0/how\_do\_i\_remap\_the\_sound\_channels\_71\_surround\_in/

Thank you! If I've missed anything, please let me know!

https://redd.it/1kiaqm0
@r_linux
Linux is more fun than Windows to troubleshoot

Idk if it's just me or what but when Windows breaks, it feels like a slog repairing it. When Linux breaks though it's sorta enjoyable in a way to repair. Like I definitely prefer it when it just works but there's a weird sense of fun when you're looking through all the files and learning about systems to figure it out. Idk how to describe it really and maybe fun isn't the right word but there's definitely something better about fixing Linux. Anyone else feel this way?

https://redd.it/1kidxtz
@r_linux
All I did was update my arch linux, but it seems like its downloading GTA VI
https://redd.it/1kie9fm
@r_linux
Love hate relationship with Linux.

I have been using Linux since 2019 and every time I do, I always feel something is missing that's there in Windows.

I have an Asus Tuf F15 FX506HF (bought in 2024) and it uses Armoury Crate to control fan speed. But this software isn't available in Linux so the fans don't turn on AT ALL unless temps hit 80C. Also I'm currently in college so a lot of the software I use is windows only (stuff like Safe Exam Browsers, e-CAD software, WhatsApp Desktop) and I need to keep going to windows to do all these things.

But as soon as I switch to Windows I miss all the good stuff about Linux like how easy it is to install, uninstall and manage applications, the terminal and how everything related to programming just works in Linux (stuff like Git, PHP etc).

I'm really tired of going around and around and I really wanna marry and settle down to one OS but all the things mentioned above are dealbreakers for me. I've tried WSL and it's dogshit. I also tried VM but Linux just runs too slow in VM. Currently I have dual boot but everytime I need to access the other OS, I need to restart the whole machine.

Please help me choose and navigate.

https://redd.it/1kidjo4
@r_linux
Tux everytime i'll start comp now
https://redd.it/1kiu895
@r_linux
Micro SD

I was told that SD cards / chips are not good for running Linux typically, however, don't USB thumb drives and what not have an SD card inside it? What is the difference of it being able to eject out of the thumb drive or not, is it a matter of being usb connection? Does it just have to connect to the computer via usb?

https://redd.it/1kiv7ye
@r_linux