After a recent udev upgrade dev-tcltk/snack-2.2.10-r6 does not see the sound devices any more. For example, in my Python application I can do the following (an example from snack documentation): >>> from Tkinter import * >>> root = Tk() >>> import tkSnack >>> tkSnack.initializeSnack(root) >>> tkSnack.audio.inputDevices() () And as one can see, the list of available devices is empty, although I installed the Snack with 'alsa' USE-flag turned on. Other applications installed on my system are still able to produce sound through the ALSA device. This bug also affects net-im/coccinella-0.96.21 which is why I actually noticed it. I do not know Tcl to test the Snack from the Tcl program, but the list of available sound devices in Coccinella's settings is also empty. Reproducible: Always
Could you guys comment on that?
In [4]: tkSnack.initializeSnack(root) Unable to open mixer /dev/mixer
(In reply to comment #2) > In [4]: tkSnack.initializeSnack(root) > Unable to open mixer /dev/mixer okay, this seems to be a problem due to new kernel.
I don't have /dev/mixer, I guess that's from OSS-only setup Everything ALSA related in /dev/snd is root:audio as they should be Not sure what you are looking for us (udev-bugs@) to comment?
(In reply to comment #4) > I don't have /dev/mixer, I guess that's from OSS-only setup > Everything ALSA related in /dev/snd is root:audio as they should be > Not sure what you are looking for us (udev-bugs@) to comment? you are right, /dev/mixer is not the problem. Why udev-bugs@, because the OR stated that it is because of recent udev bumps.
(In reply to comment #5) > (In reply to comment #4) > > I don't have /dev/mixer, I guess that's from OSS-only setup > > Everything ALSA related in /dev/snd is root:audio as they should be > > Not sure what you are looking for us (udev-bugs@) to comment? > > you are right, /dev/mixer is not the problem. > Why udev-bugs@, because the OR stated that it is because of recent udev > bumps. ConsoleKit's ooold udev-acl rules might have allowed sound access without belonging to group audio with the old udev Those rules are no longer compatible with new udev, and beloging to audio group is mandatory (like we have always documented) Can't think of anything else that would have changed b/c of udev upgrade
I can reproduce this with # id justin uid=2069(justin) gid=2069(justin) groups=2069(justin),10(wheel),18(audio),19(cdrom),27(video),80(cdrw),85(usb),100(users),250(portage),439(ldap),12(mail),994(libvirt),101(vboxusers),16(cron),999(fcron),997(kvm),990(wireshark) Interestingly, alsaconf can't detect any device although my gnome has sound.
(In reply to comment #7) > Interestingly, alsaconf can't detect any device although my gnome has sound. alsaconf is not reliable, it has never been -- it works only on a binary-only distribution shipped kernels where all of the ALSA drivers are built as modules that's why we document editing the alsa conf file in modprobe.d directory instead of running it
(In reply to comment #8) > (In reply to comment #7) > > Interestingly, alsaconf can't detect any device although my gnome has sound. > > alsaconf is not reliable, it has never been -- it works only on a > binary-only distribution shipped kernels where all of the ALSA drivers are > built as > modules Our official docs still tell you to run alsaconf "To configure your sound card just type alsaconf in a shell as root."
(In reply to comment #9) > (In reply to comment #8) > > (In reply to comment #7) > > > Interestingly, alsaconf can't detect any device although my gnome has sound. > > > > alsaconf is not reliable, it has never been -- it works only on a > > binary-only distribution shipped kernels where all of the ALSA drivers are > > built as > > modules > > Our official docs still tell you to run alsaconf > > "To configure your sound card just type alsaconf in a shell as root." That is bad. I filed bug 456214 to get rid of alsaconf. Is only useful for ISA/PCMCIA cards.
I was unable to reproduce the events in your Python feedback: $ python2 Python 2.7.12 (default, Sep 29 2016, 22:26:24) [GCC 5.4.0] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> from Tkinter import * >>> root = Tk() >>> import tkSnack >>> tkSnack.initializeSnack(root) Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/usr/lib64/python2.7/site-packages/tkSnack.py", line 21, in initializeSnack Tkroot.tk.call('eval', 'package require snack') _tkinter.TclError: couldn't load file "/usr/lib64/snack2.2/libsnack.so": /usr/lib64/snack2.2/libsnack.so: undefined symbol: Tcl_SeekOld The tcl version appears to work as far as I'm able to test it (it wants access to /dev/sound/dsp and I use PA, so I don't know which path or device argument to feed to it). The following tcl script is a quick way to test it: #!/usr/bin/env tclsh package require snack snack::sound s s read /usr/share/sounds/alsa/Front_Center.wav s play snack::audio outputDevices s play -device /dev/dsp s play -device /dev/audio s destroy I couldn't get sound to play on any of the devices that were listed by 'outputDevices', but that may be because of PA. (In fact, it seems the last time Snack was updated was before PA existed [0]) Someone on plain ALSA should test it so we can figure out what to do with this. [0]: http://www.speech.kth.se/snack/download.html : "Source release for all platforms 1.7M (December 14, 2005)"
Adding a blocker since this bug isn't yet resolved and the package is being considered for stabilization.
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a44b54f8614f3cf31561c049d2a1385833fcc490 commit a44b54f8614f3cf31561c049d2a1385833fcc490 Author: Tupone Alfredo <tupone@gentoo.org> AuthorDate: 2018-10-04 07:10:01 +0000 Commit: Tupone Alfredo <tupone@gentoo.org> CommitDate: 2018-10-04 07:10:01 +0000 dev-tcltk/snack: EAPI 6, maybe fix bug #455370 Bug: https://bugs.gentoo.org/455370 Signed-off-by: Alfredo Tupone <tupone@gentoo.org> Package-Manager: Portage-2.3.49, Repoman-2.3.10 dev-tcltk/snack/files/alsa-undef-sym.patch | 6 +- dev-tcltk/snack/snack-2.2.10-r7.ebuild | 96 ++++++++++++++++++++++++++++++ 2 files changed, 99 insertions(+), 3 deletions(-)
Please test dev-tcltk/snack-2.2.10-r7