/dev/mixer is invisible, how to make it visible?

I started using WindowMaker again. To control audio volume I use the dockapp /audio/mixer.app. This dockapp points to /dev/mixer, but this file is not visible. I know it's there because ls -i /dev/mixer is returning a value. But it's not showing in /dev/. Problem is that Mixer.app complains that it can't read /dev/mixer.

I tried creating a symlink but that complains that the "file exist" already. I tried putting link mixer0 mixer in /etc/devfs.conf and add path 'mixer*' unhide in /etc/devfs.rules, but nothing works.

Does anyonehave an idea how to make /dev/mixer readable for Mixer.app?

Thanks in advance,

Marco
 
Hmm, seems to work just fine here, excerpt from truss output:
Code:
openat(AT_FDCWD,"/dev/mixer",O_RDONLY,00)        = 4 (0x4)
ioctl(4,0x40044d00 { IOR 0x4d('M'), 0, 4 },0x82ae49068) = 0 (0x0)
ioctl(4,0x40044d08 { IOR 0x4d('M'), 8, 4 },0x82ae4906c) = 0 (0x0)
close(4)                                         = 0 (0x0)

EDIT: note though that I don't run any sound-related daemons (like pulseaudio), just thought that it *could* be related.
 
What exactly is it doing? Could you try truss'ing it?

P.S. all that mixer_enable does (currently, at least) is save/restore the mixer values.
The app starts but changing the volume level with it does nothing. Starting the app in an xterm shows:
Code:
Mixer.app: unable to read from /dev/mixer

I'll look into truss

PS: truss gives tons of these messages:

Code:
poll({ 3/POLLIN|POLLOUT },1,-1)                  = 1 (0x1)
writev(3,[{"+\^X\^A\0",4},{0x0,0},{0x822d02e36,0}],3) = 4 (0x4)
poll({ 3/POLLIN },1,-1)                          = 1 (0x1)
recvmsg(3,{NULL,0,[{"\^A\^Bt\M-d\0\0\0\0\^^\0 \^A\0\0"...,4096}],1,{},0,0},0) = 32 (0x20)
recvmsg(3,0x8203a2c90,0)                         ERR#35 'Resource temporarily unavailable'
recvmsg(3,0x8203a2c90,0)                         ERR#35 'Resource temporarily unavailable'
recvmsg(3,0x8203a2d10,0)                         ERR#35 'Resource temporarily unavailable'
recvmsg(3,0x8203a2d50,0)                         ERR#35 'Resource temporarily unavailable'
nanosleep({ 0.050000000 })                       = 0 (0x0)
poll({ 3/POLLIN|POLLOUT },1,-1)                  = 1 (0x1)
writev(3,[{"+\^X\^A\0",4},{0x0,0},{0x822d02e36,0}],3) = 4 (0x4)
poll({ 3/POLLIN },1,-1)                          = 1 (0x1)
recvmsg(3,{NULL,0,[{"\^A\^Bu\M-d\0\0\0\0\^^\0 \^A\0\0"...,4096}],1,{},0,0},0) = 32 (0x20)
recvmsg(3,0x8203a2c90,0)                         ERR#35 'Resource temporarily unavailable'
recvmsg(3,0x8203a2c90,0)                         ERR#35 'Resource temporarily unavailable'
recvmsg(3,0x8203a2d10,0)                         ERR#35 'Resource temporarily unavailable'
recvmsg(3,0x8203a2d50,0)                         ERR#35 'Resource temporarily unavailable'
nanosleep({ 0.050000000 })                       = 0 (0x0)
 
Maybe you need to be in the wheel group?
Code:
/home/hsebert % ls -la /dev/mixer 
crw-rw-rw-  1 root  wheel  0x5b Jun 11 20:42 /dev/mixer
 
PS: truss gives tons of these messages:
Redirect to a file (including stderr, the output is there), wait for several seconds, close the app, and find the opens for /dev/mixer in the file:
Code:
truss Mixer.app >app.out 2>&1 & sleep 1; pkill Mixer.app; grep /dev/mixer app.out
 
This is in app.out:
Code:
truss: Unable to enable LWP events for pid 83263: Operation not permitted
 
Yeah had some security things set in sysctl.conf. Removed them and can run truss as user now. But the results are the same though.
Doing a full upgrade of the system now. You never know... (edit: no unfortunately...)
 
Back
Top