The officially official Devuan Forum!

You are not logged in.

#1 Re: DIY » ALSA-only purists: Question, new GUI app for the mixer and EQ? » Today 13:49:07

Just FYI- I get no "Mic" control when using your mixer, because my system has no mixer element actually named "Mic." I have a "Headset Mic," a "Headphone Mic," and an "Internal Mic," but no "Mic." I also get no controls of any kind with my UMC202HD USB interface, because it uses non-standard element names. I know from experience it would add a lot of complexity to scan the mixer for the actual elements present on the device, but the alternative is going to be a certain number of users like me being unable to use the app with at least some devices.

Some modern motherboards detect when headphones are plugged in and require different handling.

This capability can be toggled on and off with the "Auto-Mute Mode" on many cards. alsamixer should expose this control. If it's "enabled," the speakers should be muted when headphones are plugged in. If you have more than one headphone output, there may be more than one option besides "disabled." It may take some experimentation to figure out which option you need.

#2 Re: Desktop and Multimedia » Printer suddenly stopped working recently » Today 12:00:18

Yes it is in Debian as expected and it is intended for use in containers running on systemd hosts.

I see, that explains why it got confused running on a Devuan system!

#3 Re: Desktop and Multimedia » Printer suddenly stopped working recently » Today 11:32:55

But systemctl is in the repositories

Interesting, I wasn't aware of that. It only needs Python, so I went ahead and installed it. Let's see what it does...

$ systemctl status ssh
/usr/bin/systemctl:1541: SyntaxWarning: invalid escape sequence '\w'
  expanded = re.sub("[$](\w+)", lambda m: get_env1(m), cmd.replace("\\\n",""))
/usr/bin/systemctl:1543: SyntaxWarning: invalid escape sequence '\w'
  new_text = re.sub("[$][{](\w+)[}]", lambda m: get_env2(m), expanded)
/usr/bin/systemctl:1628: SyntaxWarning: invalid escape sequence '\w'
  cmd3 = re.sub("[$](\w+)", lambda m: get_env1(m), cmd2)
/usr/bin/systemctl:1631: SyntaxWarning: invalid escape sequence '\w'
  newcmd += [ re.sub("[$][{](\w+)[}]", lambda m: get_env2(m), part) ]
ssh.service - OpenBSD Secure Shell server
    Loaded: loaded (/usr/lib/systemd/system/ssh.service, enabled)
    Active: inactive (dead)

Well, something happened! That part at the end appears similar to authentic systemctl output, but it's not correct. sshd was active, and the system had live clients connected when I ran this. Something also clearly went very wrong with those regexes.

#4 Re: Installation » [SOLVED] Debootstrap Excalibur » Today 10:43:17

It doesn't  work from Debian Bullseye.

If you're installing Devuan from Debian (or the other way around) I would recommend using the --foreign/--second-stage method. This has worked for me in the past, when the standard single-stage method didn't.

#5 Re: DIY » SHED init independient/agnostic user services » 2025-11-27 02:50:34

Nice! I had wondered if something like that would work. I appreciate you sharing this stuff. I don't really know what would be the "correct" way to write an alternative session manager, but I don't see anyone else even trying right now.

#6 Re: Documentation » How to: Devuan 5 Daedalus an pipewire » 2025-11-27 02:19:39

Thanks for the feedback, rolfie. I guess PipeWire works better with your type of desktop install. That makes sense, I guess. Modern software is designed to work with modern setups. I just noticed this is now happening on both of the Devuan systems where I have installed PipeWire alongside xinit. When I shut down X, my mixer settings are unchanged, but when I restart X, PW has reset my audio devices. I need to test it on a system with a display manager, to see if that makes a difference.

I figured out a workaround for now. I saved a reasonable set of defaults to a file using alsactl, then put a line in my .xsessionrc to load these settings on a delay at startup. It isn't really a "fix," as it still resets my mixer settings every time I start an X session, but at least it loads a set of defaults that actually works.

#7 Re: Documentation » How to: Devuan 5 Daedalus an pipewire » 2025-11-26 17:48:51

After installing pipewire, my ALSA mixer settings are now being reset every time I log in. It wouldn't be that bad if the defaults made sense, but it mutes and zeros-out almost every channel. Apparently wireplumber might have something to do with this, maybe, but I can't find any straight answers online.

Has anyone else dealt with this? I would be happy if I could figure out how to either disable it, or set new "sane" defaults. Why would it do this in the first place? Obviously, wherever I left the mixer settings when I logged out would be where I wanted them to be when I logged back in!

#8 Re: Off-topic » Question: Best/fastest repos in general for each continent? » 2025-11-26 12:41:25

The problem for me is that the fastest mirrors from my location seem to change pretty often. I usually just keep it at us.deb.devuan.org. If I use the global URL (deb.devuan.org) I always seem to hit an extremely slow mirror eventually. However, there was a while last summer where the only mirror that gave me a decent connection was in Taiwan.

Don't know how that would work for deb822

All I have to do to switch mirrors is change which line is commented out:

URIs: http://us.deb.devuan.org/merged/
#URIs: https://tw1.mirror.blendbyte.net/devuan/merged/

#9 Re: Desktop and Multimedia » Printer suddenly stopped working recently » 2025-11-26 11:46:38

systemctl restart cups-browsed

I'm not currently running cups on any of my systems, but keep in mind Devuan doesn't have systemd, and therefore doesn't use systemctl. You're probably going to want something more like this:

service cups-browsed restart

#10 Re: DIY » ALSA-only purists: Question, new GUI app for the mixer and EQ? » 2025-11-25 09:40:04

I'll be honest, I don't even remember where I got that snippet. It made the EQ controls appear in greenjeans' app, but I didn't do listening tests. I'm guessing the second block should read type equal, not type plug. Why would someone put a deliberate error in there? Wait... did I get tricked into copying AI slop?!

#11 Re: DIY » ALSA-only purists: Question, new GUI app for the mixer and EQ? » 2025-11-24 02:43:42

I wrote some scripts (very specific for my needs so not released) and a few applications that make use of it (for the apps see linuxtech.net)

Those look fantastic! My searches didn't turn up anything on this level.

For documentation of the ALSA MIDI commands the man pages are quite good.

This is true, once I was aware of these utilities, the man pages were very helpful.

#12 Re: Packaging for Devuan » Packages that do not appear in the Synaptic package manager » 2025-11-24 02:22:06

Whenever you see broken packages, it's a good idea to try apt-get -f install to see if apt can fix the problems for you. It doesn't always work, but it is worth trying. libc6-dev might be important. For example, I need it to install my WiFi drivers. This makes me wonder if you are having connection issues. Are you able to install any packages at all? What error message are you seeing when you enter apt install synaptic?

#13 Re: DIY » ALSA-only purists: Question, new GUI app for the mixer and EQ? » 2025-11-24 01:49:25

The EQ plugin is definitely nice to have. I didn't even know it was available until I ran greenjeans' mixer and saw it was looking for an EQ plugin. So I installed libasound2-plugin-equal, but I still had to do some additional setup to get it working. Putting this in my .asoundrc seemed to do the trick:

ctl.equal {
    type equal
}
pcm.plugequal {
    type plug
    slave.pcm "hw:0,0"
}
pcm.equal {
    type plug
    slave.pcm plugequal
}

ALSA has so many features that get overlooked. I recently discovered alsaseq (not to be confused with alsaeq) the ALSA MIDI sequencer and router. It's hard to find information online about how to use it. Search results mostly lead to the API. The alsa-utils package installs some CLI utilities, such as aconnect, aseqnet, aseqsend, and aseqdump that let you control routing. They work, but they're definitely for the technically inclined. There is a GUI app, aseqview, but it's so old it depends on GTK 1.2. I encounter this kind of thing a lot when searching for ALSA utilities. sad

#14 Re: Freedom Hacks » The Absurdist Comedy » 2025-11-23 20:07:42

But ALSA it not without blame, while it works well it has really awful/cryptic documentation which probably is the main reason why most people don't understand all of it's capabilities (myself included).

The API documentation is an absolute nightmare. In fact, the only real "documentation" is the source comments. They get scraped by doxygen and posted to the ALSA site, but most of the links from the index page just go to blank pages. It's been this way for years!

At least there's some online documentation for the C API, I guess. ALSA has an official set of Python bindings which wrap essentially the entire C API. The ALSA devs call it "pyalsa," but if you search for that name, you will find only a completely unrelated, unfinished, decade-old hobbyist project. (in fact, I think there might be two of them!) There is absolutely no online documentation for the real Python ALSA bindings. In fact, the only way to read the documentation is from within Python itself.

Unfortunately, the ALSA bindings also seem pretty buggy. get_volume works, but get_volume_dB always seems to return zero. Maybe I'm using it wrong, but the sparse documentation certainly doesn't give any hints. Attempting to use the mixer callback facility invariably results in the Python interpreter crashing.

Rather than querying ALSA’s actual device topology using snd_device_name_hint(), they sidestepped proper enumeration entirely. The result? A single, fictional “default” device is reported — not discovered, but invented.

I saw some confusing things when I was looking at other people's mixer code. There seemed to be this persistent belief that you had to open the snd_hctl device before opening the snd_mixer interface. I have no idea where they got this idea, but it's completely unnecessary.

Even the ALSA devs don't fully implement their own API. I have a card that shows the "Mic Boost" control twice in alsamixer. The element shows up during both capture and playback enumeration, but it's marked as "common." The application should check for this attribute and only show the control once.

#15 Re: DIY » SHED init independient/agnostic user services » 2025-11-23 18:35:43

Sorry if all the edits are confusing. I've been updating this as I troubleshoot the issue.

how do you log out? by all means shedc logout should take care of cleaning after itself, if it doesn't then i gotta fix that.

Aha, I missed the whole shedc logout thing. (Edit) I modified my startup to run shedc logout on exit. It's still not deleting the runtime dir under /tmp/1000-runtime-dir, though. There's an error in my ~/.xsession-errors referring to a different path that doesn't exist:

/home/<MY_USERNAME>/.local/bin/shedc: 44: cannot open /run/user/1000/GUISession9799/*.pid: No such file
 sending term to        *.pid

I don't have a /run/user directory at any point in the process.

#16 Re: DIY » SHED init independient/agnostic user services » 2025-11-22 09:43:03

EDIT: After posting the question below, I realized something potentially more important. The value of XDG_RUNTIME_DIR set by shed isn't being exported to the session. As a result, pipewire commands run in terminal windows (such as pactl & wpctl) don't work. If I manually export it as /tmp/1000-runtime-dir from my ~/.xsessionrc then everything works fine. I'm not sure why this happens, since I see in your code that shed explicitly exports the variable. Of course shed can't export the value, I should have realized a script can't export to its invoking script unless it's sourced. However, in this case, even sourcing doesn't work, probably because shed runs in the background and doesn't exit.

I noticed I was accumulating multiple GUISessionXXXX directories on repeated login/logout cycles, since shed was creating a new directory each time from the new PID. It all gets cleaned out on reboot, but the XDG spec says we're supposed to delete these directories between login sessions. Would it make sense for shed to delete the directory on exit if shed created it? I'm not sure whether there might be processes still trying to access this directory after shed exits, but I'm guessing if shed created it, then only shed services are using it.

#17 Re: Installation » [SOLVED] Devuan Excalibur polkitd installation bug » 2025-11-22 06:25:44

According to apt-file, /usr/bin/systemd-sysusers can be installed by either opensysusers or systemd-standalone-users. The latter package is a dependency of cron-daemon-common and openssh-server, among others.

#18 Re: Hardware & System Configuration » Thunar cannot browse network (a work-around) » 2025-11-21 20:50:44

Not so much bothered about not seeing the Apple and Windows devices yet.

Has anyone actually been able to get file sharing to work on Windows 10 or later? I gave up a while ago. My searches indicated that Microsoft has completely broken local file sharing in recent versions Windows to push "the cloud." Users asking for help on support.microsoft.com just get a sales pitch for OneDrive.

When I have to boot into Windows, I use Cygwin to mount remote SSHFS shares hosted on the Linux systems. Unfortunately, I can't get it to work in the other direction, even though Cygwin supposedly supports it now.

#19 Re: Hardware & System Configuration » (excalibur) strange messages during startup » 2025-11-20 21:01:21

Thanks, greenjeans. I actually need to correct what I said, I haven't been getting the alsa error since November 15; I was looking at old boot logs. It seems I received an updated version at some point after the 15th.

#20 Re: Other Issues » [SOLVED] Excalibur and fail2ban » 2025-11-20 06:04:50

Huh, that's strange. I installed fail2ban on both a Trixie and an Excalibur system recently and both worked perfectly (once I set the proper logging method.) Maybe it's because I used nftables and pynotify from the start? Those seem to be part of some people's "fixes."

#21 Re: Hardware & System Configuration » (excalibur) strange messages during startup » 2025-11-20 05:54:42

Yes, there are several different packages that can pull in apache2 as a dependency, including web configuration interfaces and documentation browsers. I think most people just ignore that error message if they're not hosting a real public-facing website.

The alsa_restore_std errors were due to a bug in a configuration file in upstream Debian. It was discussed in this thread. Supposedly, it was fixed, but it appears to have been broken again. It's still broken on all my Excalibur systems. As far as I can tell, it's not causing any audio problems, so I've been ignoring it.

I don't know about the 'zoom' error. It seems to have something to do with a USB Ethernet adapter. If the device is working properly, it may not be important. My Realtek Ethernet NIC reports missing firmware on boot, but when I looked it up, I found that the kernel doesn't even need the firmware to use the device! Linux errs on the side of caution when reporting errors.

#22 Re: DIY » SHED init independient/agnostic user services » 2025-11-19 03:29:47

OK, thanks. It didn't occur to me that the logic to handle XDG_RUNTIME_DIR being unset wasn't be in the release version. I will update to master and keep an eye on the log.

(Later edit) It's all working now. I cloned from master, ran make && make install, then confirmed shed was running. It automatically creates a runtime directory at /tmp/1000-runtime-dir/GUISessionXXXX each time the X server starts. I put the three PipeWire service files in ~/.config/shed/services/ as you showed in the other thread, and now they're starting as well. Now I'm thinking about what else it might be good for. I think I'll try creating a service for starting Deskflow. It's not quite as complicated to run as PipeWire (it doesn't need a socket, for example) but it would still be neater to use shed.

#23 Re: DIY » SHED init independient/agnostic user services » 2025-11-18 22:41:03

I wanted to give this a try, but it seems my system may be too minimal in its current state. Is this because I don't have elogind installed? Do I need it?

mkdir: cannot create directory ‘/run/user’: Permission denied
mkfifo: cannot create fifo '/run/user/1000/GUISession23383/socket': No such file or directory

#24 Re: Documentation » How to: Devuan 5 Daedalus an pipewire » 2025-11-18 20:18:19

FYI, based on stultumanto's findings re elogind vs XDG_RUNTIME_DIR, and stultumanto's subsequent note about PIPEWIRE_RUNTIME_DIR, I pushed an update which creates and uses a PIPEWIRE_RUNTIME_DIR if needed.

Glad I could help. I'm catching up on the thread and looking at the code for EDX-0's shed, and I have to say, he had all the runtime directory stuff figured out a long time ago. I wasn't aware of how much work had already been done on the problem, or how complex it was.

#25 Re: Installation » Devuan6 live XFCE install » 2025-11-18 16:05:37

The install media might not have booted in UEFI mode. I've had this problem a few times. If you know how to access a shell prompt from the installer, you can run the command findmnt | grep efivars, You should see a line starting with /sys/firmware/efi/efivars. This is required to properly install grub-efi. If you don't see the line, then your system booted in legacy mode, and you can't install to EFI.

If the system didn't boot in UEFI mode, you may need to adjust your BIOS settings. Some systems have a legacy boot "fallback" option. I've had systems where the installer booted in legacy mode if legacy fallback was enabled, so I had to force UEFI boot only. I've also had issues with some USB media creation programs. The last time I used Rufus, it did not create EFI boot disks by default. I had to manually select the option from a drop-down menu.

Board footer

Forum Software