Re: [Nix-dev] PulseAudio
Thus quoth David Izquierdo at 19:16 on Tue, May 09 2017: > > I don't know how to see that process' logs. Maybe some magic journalctl > option. Is it possible that it's starting as a systemd user service? > Then `journalctl --user -eu pulseaudio` would work... But starting pulse > like that doesn't seem to work for me. This https://wiki.ubuntu.com/PulseAudio/Log may be a way to go to get PulseAudio discuss its issues with you. (I didn't try it.) -- Sergiu signature.asc Description: PGP signature ___ nix-dev mailing list nix-dev@lists.science.uu.nl https://mailman.science.uu.nl/mailman/listinfo/nix-dev
Re: [Nix-dev] PulseAudio
I don't know how to see that process' logs. Maybe some magic journalctl option. Is it possible that it's starting as a systemd user service? Then `journalctl --user -eu pulseaudio` would work... But starting pulse like that doesn't seem to work for me. On 09/05/17 21:13, Mark Gardner wrote: David, On Tue, May 9, 2017 at 2:59 PM, David Izquierdowrote: If you run `pulseaudio -k`, does it kill it? No: $ pulseaudio -k E: [pulseaudio] main.c: Failed to kill daemon: No such process But the daemon is running as me: $ ps aux | grep pulseaudio user 2572 0.0 0.0 490632 10540 ?Sl 14:55 0:00 /nix/store/ a72z0gasiv1145ygyijzgdra921pkk60-pulseaudio-10.0/bin/pulseaudio --start --log-target=syslog user 2604 0.0 0.0 118264 5756 ?S14:55 0:00 /nix/store/ a72z0gasiv1145ygyijzgdra921pkk60-pulseaudio-10.0/libexec/pulse/gconf-helper Once dead, what does it log if you run `pulseaudio` and then try to use pavucontrol or other program? I killed it by hand: $ sudo kill 2572 2604 $ mpv foobar.mp3 # plays $ pavucontrol # Works! Going to try a reboot to see if it still works... Back to the previous behavior until I kill them then start up something that uses pulseaudio. Making progress. Thanks David. Mark ___ nix-dev mailing list nix-dev@lists.science.uu.nl https://mailman.science.uu.nl/mailman/listinfo/nix-dev
Re: [Nix-dev] PulseAudio
David, On Tue, May 9, 2017 at 2:59 PM, David Izquierdowrote: > If you run `pulseaudio -k`, does it kill it? No: $ pulseaudio -k E: [pulseaudio] main.c: Failed to kill daemon: No such process But the daemon is running as me: $ ps aux | grep pulseaudio user 2572 0.0 0.0 490632 10540 ?Sl 14:55 0:00 /nix/store/ a72z0gasiv1145ygyijzgdra921pkk60-pulseaudio-10.0/bin/pulseaudio --start --log-target=syslog user 2604 0.0 0.0 118264 5756 ?S14:55 0:00 /nix/store/ a72z0gasiv1145ygyijzgdra921pkk60-pulseaudio-10.0/libexec/pulse/gconf-helper > Once dead, what does it log if you run `pulseaudio` and then try to use > pavucontrol or other program? I killed it by hand: $ sudo kill 2572 2604 $ mpv foobar.mp3 # plays $ pavucontrol # Works! Going to try a reboot to see if it still works... Back to the previous behavior until I kill them then start up something that uses pulseaudio. Making progress. Thanks David. Mark -- Mark Gardner -- ___ nix-dev mailing list nix-dev@lists.science.uu.nl https://mailman.science.uu.nl/mailman/listinfo/nix-dev
Re: [Nix-dev] PulseAudio
If you run `pulseaudio -k`, does it kill it? Once dead, what does it log if you run `pulseaudio` and then try to use pavucontrol or other program? On 09/05/17 20:58, Mark Gardner wrote: On Tue, May 9, 2017 at 2:32 PM, Sergiu Ivanovwrote: I suppose you tried rebooting after installing the packages? Yes. I did that before doing the above actions. I even upgraded to 17.03 (from 16.09) in case that helped. It didn't. I'm afraid I'm running out of ideas, sorry :-( Off the top of my head, I don't think the no-longer-available wiki page had many more details relevant to your situation. Thanks for your help. Mark ___ nix-dev mailing list nix-dev@lists.science.uu.nl https://mailman.science.uu.nl/mailman/listinfo/nix-dev ___ nix-dev mailing list nix-dev@lists.science.uu.nl https://mailman.science.uu.nl/mailman/listinfo/nix-dev
Re: [Nix-dev] PulseAudio
On Tue, May 9, 2017 at 2:32 PM, Sergiu Ivanovwrote: > I suppose you tried rebooting after installing the packages? > Yes. I did that before doing the above actions. I even upgraded to 17.03 (from 16.09) in case that helped. It didn't. > I'm afraid I'm running out of ideas, sorry :-( Off the top of my head, I > don't think the no-longer-available wiki page had many more details > relevant to your situation. > Thanks for your help. Mark -- Mark Gardner -- ___ nix-dev mailing list nix-dev@lists.science.uu.nl https://mailman.science.uu.nl/mailman/listinfo/nix-dev
Re: [Nix-dev] PulseAudio
Thus quoth Mark Gardner at 18:05 on Tue, May 09 2017: > On Tue, May 9, 2017 at 1:50 PM, Sergiu Ivanovwrote: > >> What happens if you install pavucontrol and pamixer in a user environment? > [...] > $ pavucontrol > > ** (pavucontrol:8551): WARNING **: Error retrieving accessibility bus > address: org.freedesktop.DBus.Error.ServiceUnknown: The name org.a11y.Bus > was not provided by any .service files > > Within the pavucontrol window that pops up it says "Connection to > PulseAudio failed". [...] > $ pamixer --list-sinks > Connection error I suppose you tried rebooting after installing the packages? I'm afraid I'm running out of ideas, sorry :-( Off the top of my head, I don't think the no-longer-available wiki page had many more details relevant to your situation. -- Sergiu signature.asc Description: PGP signature ___ nix-dev mailing list nix-dev@lists.science.uu.nl https://mailman.science.uu.nl/mailman/listinfo/nix-dev
Re: [Nix-dev] PulseAudio
Thanks for your prompt reply Sergiu. On Tue, May 9, 2017 at 1:50 PM, Sergiu Ivanovwrote: > What happens if you install pavucontrol and pamixer in a user > environment? > $ nix-env -iA nixos.pavucontrol installing ‘pavucontrol-3.0’ building path(s) ‘/nix/store/vbcjij1kyljx6psi55c3grdmgp04cwm2-user-environment’ created 1234 symlinks in user environment $ pavucontrol ** (pavucontrol:8551): WARNING **: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.ServiceUnknown: The name org.a11y.Bus was not provided by any .service files Within the pavucontrol window that pops up it says "Connection to PulseAudio failed". $ nix-env -iA nixos.pamixer installing ‘pamixer-1.3’ building path(s) ‘/nix/store/w21ijfx76xkf2smw6xk1hgvmp9b2h2s0-user-environment’ created 1235 symlinks in user environment $ pamixer --list-sinks Connection error Mark -- Mark Gardner -- ___ nix-dev mailing list nix-dev@lists.science.uu.nl https://mailman.science.uu.nl/mailman/listinfo/nix-dev
Re: [Nix-dev] PulseAudio
Hello Mark, Thus quoth Mark Gardner at 17:38 on Tue, May 09 2017: > > I am having trouble getting PulseAudio to work. I added the following to > configuration.nix, executed nixos-rebuild switch, and rebooted: > > hardware.pulseaudio = { > enable = true; > package = pkgs.pulseaudioFull; > }; > environment.systemPackages = with pkgs; [ > pamixer > paprefs > pavucontrol > ]; Here's what I have in my /etc/nixos/configuration.nix: hardware = { bluetooth.enable = true; pulseaudio = { enable = true; package = pkgs.pulseaudioFull; }; }; I installed pavucontrol and pamixer using nix-env, both work properly. Also, a bluetooth speaker worked out of the box with this configuration. I couldn't get paprefs working, however. (I tried, but not quite really hard.) What happens if you install pavucontrol and pamixer in a user environment? -- Sergiu signature.asc Description: PGP signature ___ nix-dev mailing list nix-dev@lists.science.uu.nl https://mailman.science.uu.nl/mailman/listinfo/nix-dev
Re: [Nix-dev] pulseaudio not reading /etc/pulse/default.pa [Was: pulseaudio broken in 14.12: Daemon already running]
`man default.pa` has to say: The PulseAudio sound server interprets the file ~/.config/pulse/default.pa on startup, and when that file doesn't exist /etc/pulse/default.pa. Just out of curiosity I checked the source and it seems that this line was already there in 2007 and the code that opens configs hasn’t changed at all for a few years but I’m pretty sure that PA had this behaviour back in 2007 since there are no traces of code that looks like merging the two files. On Mon, Jan 26, 2015 at 8:23 PM, Peter Jones mli...@pmade.com wrote: Peter Jones mli...@pmade.com writes: Pulseaudio stopped working for me after upgrading to 14.12. It seems that all PA clients start their own server, which eventually fails because the pulseaudio daemon is already running. I believe I've tracked down the root problem. It appears that if you have a ~/.config/pulse/default.pa file then pulseaudio will not read /etc/pulse/default.pa. This wasn't the case in previous versions. Even an empty ~/.config/pulse/default.pa file will prevent pulseaudio from reading the one in /etc and thus it will start with no cards. Sounds like a bug in pulseaudio. -- Peter Jones, Founder, Devalot.com Defending the honor of good code ___ nix-dev mailing list nix-dev@lists.science.uu.nl http://lists.science.uu.nl/mailman/listinfo/nix-dev ___ nix-dev mailing list nix-dev@lists.science.uu.nl http://lists.science.uu.nl/mailman/listinfo/nix-dev
Re: [Nix-dev] Pulseaudio broken in 14.12: Daemon already running
On Mon, Jan 26, 2015 at 6:46 PM, Peter Jones mli...@pmade.com wrote: From what I understand, there's no way to use `startx' with systemd. There might be some NixOS-specific issues here, I’m not sure. But in general there _is_ a way: you just login on the text console and run `startx`. That's my preference, but I don't know how to configure NixOS to allow that. For DMs, I've tried both slim and lightdm. I have the same pulseaudio issues under both. My NixOS box has been broken for a few weeks now, so I can’t check, but I can’t think of anything in NixOS that could interfere. `loginctl' reports that I have a seat and that my session's terminal is 7. X is also running on VT 7, but it's running as *root*! Could X running as root be the problem here? No, that’s not a problem, that just means that your DM is running as root, so it launches X as root. But this explains why X has access to your video card in case there are issues with your session setup. So was your problem solved by removing `~/.config/pulse/default.pa`? If no, then the next steps are ensuring that `loginctl seat-status your_seat` lists your sound card as attached to the seat and that `getfacl /dev/snd/*` shows that your user has rw access. $ nixos-version 14.12.343.47c741f (Caterpillar) $ X -version X.Org X Server 1.16.2.901 (1.16.3 RC 1) -- Peter Jones, Founder, Devalot.com Defending the honor of good code ___ nix-dev mailing list nix-dev@lists.science.uu.nl http://lists.science.uu.nl/mailman/listinfo/nix-dev ___ nix-dev mailing list nix-dev@lists.science.uu.nl http://lists.science.uu.nl/mailman/listinfo/nix-dev
Re: [Nix-dev] Pulseaudio broken in 14.12: Daemon already running
On Tue, Jan 27, 2015 at 11:57 AM, Michael Raskin 7c6f4...@mail.ru wrote: From what I understand, there's no way to use `startx' with systemd. There might be some NixOS-specific issues here, I’m not sure. But in general there _is_ a way: you just login on the text console and run `startx`. No. There are NixOS-specific issues and NixOS-specific fixes/workarounds; but after a systemd update it became broken. There is a EPERM line for an ioctl for tty when strace-ing X started from root login session. What are those _NixOS-specific_ issues? see also: http://lists.freedesktop.org/archives/systemd-devel/2012-February/004614.html « My recommendation would be to somehow patch your display manager to manage your screen only on request, rather then trying to avoid a display manager at all. … There's a fundamental contradiction in creating forked off sessions like this: the whole audit system is written in a way that session ids can only change from unset to set but not from set to set to something else. » Huh, I believe this thread is somewhat outdated =). There is no need for `startx` to start a new session if X server is running on the same vt. That’s the whole point of, as I said earlier, having recent versions of `startx` start X on the same vt. Again: starting with xinit-1.3.4 you just login on the text console, type `startx` and everything works, because you stay on the same console and logind has already given you all the required permissions. At least, that’s how it works in theory and that’s what I see on my Gentoo laptop. ___ nix-dev mailing list nix-dev@lists.science.uu.nl http://lists.science.uu.nl/mailman/listinfo/nix-dev
Re: [Nix-dev] Pulseaudio broken in 14.12: Daemon already running
Kirill Elagin kirela...@gmail.com writes: Do you use a desktop manager or start your X session manually? The important thing is to make sure that your X server is running on _the same virtual terminal_ your logind session was opened on, otherwise you won’t get permissions to access hardware. Desktop managers take care of this and recent versions of `startx` (starting from xinit-1.3.4 IIRC) also do. `loginctl show-session session-id -p VTNr` tells you what logind thinks is your session’s terminal. I believe that the default of X is still to choose the first available terminal, so you have to explicitly pass it `vtyour-session-terminal-number` (`startx` does exactly this). From what I understand, there's no way to use `startx' with systemd. That's my preference, but I don't know how to configure NixOS to allow that. For DMs, I've tried both slim and lightdm. I have the same pulseaudio issues under both. `loginctl' reports that I have a seat and that my session's terminal is 7. X is also running on VT 7, but it's running as *root*! Could X running as root be the problem here? $ nixos-version 14.12.343.47c741f (Caterpillar) $ X -version X.Org X Server 1.16.2.901 (1.16.3 RC 1) -- Peter Jones, Founder, Devalot.com Defending the honor of good code ___ nix-dev mailing list nix-dev@lists.science.uu.nl http://lists.science.uu.nl/mailman/listinfo/nix-dev
Re: [Nix-dev] Pulseaudio broken in 14.12: Daemon already running
As Benno said this means that most likely something is wrong with your session and you don’t get access to audio devices. What’s strange is that 14.12 uses xorg-server-1.16-* and this should run as user by default and as a result should crash with insufficient permissions to access video devices unless you do something special to start it as root. Do you use a desktop manager or start your X session manually? The important thing is to make sure that your X server is running on _the same virtual terminal_ your logind session was opened on, otherwise you won’t get permissions to access hardware. Desktop managers take care of this and recent versions of `startx` (starting from xinit-1.3.4 IIRC) also do. `loginctl show-session session-id -p VTNr` tells you what logind thinks is your session’s terminal. I believe that the default of X is still to choose the first available terminal, so you have to explicitly pass it `vtyour-session-terminal-number` (`startx` does exactly this). On Mon Jan 26 2015 at 9:32:29 AM Benno Fünfstück benno.fuenfstu...@gmail.com wrote: PulseAudio should get its permissions from systemd logind. You can use loginctl to view of you're properly assigned a seat. Regards, Benno Peter Jones mlists mli...@pmade.com@ mli...@pmade.compmade.com mli...@pmade.com schrieb am So., 25. Jan. 2015 19:40: ___ nix-dev mailing list nix-dev@lists.science.uu.nl http://lists.science.uu.nl/mailman/listinfo/nix-dev ___ nix-dev mailing list nix-dev@lists.science.uu.nl http://lists.science.uu.nl/mailman/listinfo/nix-dev
Re: [Nix-dev] Pulseaudio broken in 14.12: Daemon already running
PulseAudio should get its permissions from systemd logind. You can use loginctl to view of you're properly assigned a seat. Regards, Benno Peter Jones mlists mli...@pmade.com@ mli...@pmade.compmade.com mli...@pmade.com schrieb am So., 25. Jan. 2015 19:40: ___ nix-dev mailing list nix-dev@lists.science.uu.nl http://lists.science.uu.nl/mailman/listinfo/nix-dev
Re: [Nix-dev] Pulseaudio broken in 14.12: Daemon already running
Peter Jones mli...@pmade.com writes: Peter Jones mli...@pmade.com writes: Pulseaudio stopped working for me after upgrading to 14.12. It seems that all PA clients start their own server, which eventually fails because the pulseaudio daemon is already running. I just noticed that pulseaudio doesn't see my sound cards: This appears to be some sort of permission issue. If I run pulseaudio as root then everything works as expected. Running it under my user account somehow prevents pulseaudio from seeing any of the sound cards. I did have my user account in the audio group. I've since removed it after reading some documentation, rebooted, and still no sound cards detected by pulseaudio. Using strace, I don't see pulseaudio failing to open any files or even trying to access /dev/snd/*. I do see several errors coming from setrlimit though. What's the next step in debugging this? -- Peter Jones, Founder, Devalot.com Defending the honor of good code ___ nix-dev mailing list nix-dev@lists.science.uu.nl http://lists.science.uu.nl/mailman/listinfo/nix-dev
Re: [Nix-dev] Pulseaudio broken in 14.12: Daemon already running
Kirill Elagin kirela...@gmail.com writes: What exactly do you mean by “disabling” pulseaudio? Do you have a system-wide instance of pulseaudio running (e.g. by setting `pulseAudio.systemWide = true` in the configuration.nix)? If yes, then do you have any good reasons for doing so? If no, then disable the system-wide instance. By disable I meant `hardware.pulseaudio.enable = false;'. Normally, there is exactly one instance of pulseaudio per user and it is spawned automatically (to be precise, it is spawned automatically iff it is not already running; and most likely your DE starts one during initialisation). I'm only running the one (user) instance and don't use a DE so one isn't started when I log in. When I start an audio application pulseaudio is started automatically. The problem seems to be that pulseaudio is started even if another one is running. Clients can't seem to detect the running pulseaudio thus they start a new daemon which immediately dies after seeing an existing PID file. How do clients check for a running pulseaudio daemon? I'm wondering if that process is broken. -- Peter Jones, Founder, Devalot.com Defending the honor of good code ___ nix-dev mailing list nix-dev@lists.science.uu.nl http://lists.science.uu.nl/mailman/listinfo/nix-dev
Re: [Nix-dev] Pulseaudio broken in 14.12: Daemon already running
Peter Jones mli...@pmade.com writes: Pulseaudio stopped working for me after upgrading to 14.12. It seems that all PA clients start their own server, which eventually fails because the pulseaudio daemon is already running. I just noticed that pulseaudio doesn't see my sound cards: $ pacmd list-cards 0 card(s) available. But aplay does: $ aplay -L null Discard all samples (playback) or generate zero samples (capture) default Default Audio Device (via PulseAudio) hdmi:CARD=HDMI,DEV=0 HDA Intel HDMI, HDMI 0 HDMI Audio Output hdmi:CARD=HDMI,DEV=1 HDA Intel HDMI, HDMI 1 HDMI Audio Output hdmi:CARD=HDMI,DEV=2 HDA Intel HDMI, HDMI 2 HDMI Audio Output sysdefault:CARD=PCH HDA Intel PCH, CX20756 Analog Default Audio Device front:CARD=PCH,DEV=0 HDA Intel PCH, CX20756 Analog Front speakers surround21:CARD=PCH,DEV=0 HDA Intel PCH, CX20756 Analog 2.1 Surround output to Front and Subwoofer speakers surround40:CARD=PCH,DEV=0 HDA Intel PCH, CX20756 Analog 4.0 Surround output to Front and Rear speakers surround41:CARD=PCH,DEV=0 HDA Intel PCH, CX20756 Analog 4.1 Surround output to Front, Rear and Subwoofer speakers surround50:CARD=PCH,DEV=0 HDA Intel PCH, CX20756 Analog 5.0 Surround output to Front, Center and Rear speakers surround51:CARD=PCH,DEV=0 HDA Intel PCH, CX20756 Analog 5.1 Surround output to Front, Center, Rear and Subwoofer speakers surround71:CARD=PCH,DEV=0 HDA Intel PCH, CX20756 Analog 7.1 Surround output to Front, Center, Side, Rear and Woofer speakers Could this be part of the problem? -- Peter Jones, Founder, Devalot.com Defending the honor of good code ___ nix-dev mailing list nix-dev@lists.science.uu.nl http://lists.science.uu.nl/mailman/listinfo/nix-dev
Re: [Nix-dev] Pulseaudio broken in 14.12: Daemon already running
What exactly do you mean by “disabling” pulseaudio? Do you have a system-wide instance of pulseaudio running (e.g. by setting `pulseAudio.systemWide = true` in the configuration.nix)? If yes, then do you have any good reasons for doing so? If no, then disable the system-wide instance. Normally, there is exactly one instance of pulseaudio per user and it is spawned automatically (to be precise, it is spawned automatically iff it is not already running; and most likely your DE starts one during initialisation). If you really need system-wide pulseaudio for some reason, then you might want to go through [Running PulseAudio as System-Wide Daemon]( http://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/SystemWide/) and let us know what was wrong. Actually I have no idea how well is this mode supported in NixOS and does anyone even test it… On Sat Jan 24 2015 at 5:36:45 AM Peter Jones mli...@pmade.com wrote: Pulseaudio stopped working for me after upgrading to 14.12. It seems that all PA clients start their own server, which eventually fails because the pulseaudio daemon is already running. For example, if I kill pulseaudio and then start it by hand with -vvv, I can see it start correctly and write its PID into a file. Then, if I run anything that needs to access pulse, like speaker-test, alsamixer, pavucontrol, etc., I can see in journalctl that another instance of pulseaudio is started and then dies with the error Daemon already running. The client usually dies with connection refused. I've turned off autospawning, and that doesn't change anything. Disabling pulseaudio and rebooting gives me sound again. Any idea why each client is trying to start their own pulseaudio daemon? -- Peter Jones, Founder, Devalot.com Defending the honor of good code ___ nix-dev mailing list nix-dev@lists.science.uu.nl http://lists.science.uu.nl/mailman/listinfo/nix-dev ___ nix-dev mailing list nix-dev@lists.science.uu.nl http://lists.science.uu.nl/mailman/listinfo/nix-dev