Merging the latest ~amd64 mpd (0.16.2) and setting it up (like shown in the URL above) gives me trouble. No playback possible, errors in the log. Found this on Google: http://www.musicpd.org/mantis/print_bug_page.php?bug_id=3173 # chmod 666 /dev/snd/{all files} works ok. Reproducible: Always Steps to Reproduce: 1. emerge mpd 2. configure it 3. /etc/init.d/mpd start Actual Results: no playback possible, though config is ok Expected Results: should works as like it always has Don't know what's causing this, but since nobody on the forums seems to have this problem, I guess this is somehow related to my setup, thus here comes all info I could think of being related: --snip-- Portage 2.1.9.46 (default/linux/amd64/10.0/desktop, gcc-4.5.2, libc-0-r0, 2.6.38-gentoo-r3 x86_64) ================================================================= System Settings ================================================================= System uname: Linux-2.6.38-gentoo-r3-x86_64-Intel-R-_Core-TM-_i7_CPU_920_@_2.67GHz-with-gentoo-2.0.2 Timestamp of tree: Mon, 25 Apr 2011 14:15:01 +0000 app-shells/bash: 4.2_p8 dev-java/java-config: 2.1.11-r3 dev-lang/python: 2.7.1-r1, 3.1.3-r1 dev-util/cmake: 2.8.4-r1 sys-apps/baselayout: 2.0.2 sys-apps/openrc: 0.8.2 sys-apps/sandbox: 2.5 sys-devel/autoconf: 2.68 sys-devel/automake: 1.10.3, 1.11.1-r1 sys-devel/binutils: 2.21 sys-devel/gcc: 4.5.2 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 2.4-r1 sys-devel/make: 3.82 sys-kernel/linux-headers: 2.6.38 virtual/os-headers: 0 ABI="amd64" ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="*" ACCEPT_PROPERTIES="*" ALSA_CARDS="hda-intel" ALSA_PCM_PLUGINS="*" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ARCH="amd64" ASFLAGS_x86="--32" AUTOCLEAN="yes" CAMERAS="casio_qv" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=native -mtune=native -msse4 -mcx16 -msahf -mpopcnt -O2 -pipe -fomit-frame-pointer" CFLAGS_x86="-m32" CHOST="x86_64-pc-linux-gnu" CHOST_amd64="x86_64-pc-linux-gnu" CHOST_x86="i686-pc-linux-gnu" CLEAN_DELAY="2" COLLECTD_PLUGINS="" COLLISION_IGNORE="/lib/modules" COLORTERM="rxvt" CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo" CVS_RSH="ssh" CXXFLAGS="-march=native -mtune=native -msse4 -mcx16 -msahf -mpopcnt -O2 -pipe -fomit-frame-pointer" DEFAULT_ABI="amd64" DISPLAY=":0" DISTDIR="/usr/portage/distfiles" EDITOR="/usr/bin/vim" ELIBC="glibc" EMERGE_DEFAULT_OPTS="--ask --deep --jobs=4 --keep-going --nospinner --quiet --quiet-build --tree --verbose --with-bdeps=y" EMERGE_WARNING_DELAY="10" EPREFIX="" EROOT="/" FCFLAGS="" FEATURES="assume-digests binpkg-logs collision-protect distlocks fail-clean fixlafiles fixpackages metadata-transfer news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync" FETCHCOMMAND="/usr/bin/aria2c --check-certificate=false -q -d "${DISTDIR}" -o "${FILE}" "${URI}"" FETCHCOMMAND_RSYNC="rsync -avP "${URI}" "${DISTDIR}/${FILE}"" FETCHCOMMAND_SFTP="bash -c "x=\${2#sftp://} ; host=\${x%%/*} ; port=\${host##*:} ; host=\${host%:*} ; [[ \${host} = \${port} ]] && port=22 ; exec sftp -P \${port} \"\${host}:/\${x#*/}\" \"\$1\"" sftp "${DISTDIR}/${FILE}" "${URI}"" FETCHCOMMAND_SSH="bash -c "x=\${2#ssh://} ; host=\${x%%/*} ; port=\${host##*:} ; host=\${host%:*} ; [[ \${host} = \${port} ]] && port=22 ; exec rsync --rsh=\"ssh -p\${port}\" -avP \"\${host}:/\${x#*/}\" \"\$1\"" rsync "${DISTDIR}/${FILE}" "${URI}"" FFLAGS="" GCC_SPECS="" GDK_USE_XFT="1" GENTOO_MIRRORS="ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo http://distfiles.gentoo.org" GPSD_PROTOCOLS="" GSETTINGS_BACKEND="gconf" HG="/usr/bin/hg" HOME="/root" INFOPATH="/usr/share/info:/usr/share/binutils-data/x86_64-pc-linux-gnu/2.21/info:/usr/share/gcc-data/x86_64-pc-linux-gnu/4.5.2/info" INPUT_DEVICES="evdev joystick wacom" JAVAC="/etc/java-config-2/current-system-vm/bin/javac" JAVA_HOME="/etc/java-config-2/current-system-vm" JDK_HOME="/etc/java-config-2/current-system-vm" KERNEL="linux" LANG="de_DE.utf8" LCD_DEVICES="" LC_MESSAGES="en_US.utf8" LDFLAGS="-Wl,--hash-style=gnu -Wl,-O1 -Wl,--as-needed -Wl,--sort-common" LDFLAGS_x86="-m elf_i386" LESS="-R -M --shift 5" LESSOPEN="|lesspipe.sh %s" LIBDIR_amd64="lib64" LIBDIR_amd64_fbsd="lib64" LIBDIR_ppc="lib32" LIBDIR_ppc64="lib64" LIBDIR_s390="lib32" LIBDIR_s390x="lib64" LIBDIR_sparc32="lib32" LIBDIR_sparc64="lib64" LIBDIR_x86="lib32" LIBDIR_x86_fbsd="lib32" LIBRARY_PATH="/opt/intel/Compiler/11.1/056/lib/intel64" LINGUAS="de de_DE en en_US" LOGNAME="root" LS_COLORS="rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.pdf=00;32:*.ps=00;32:*.txt=00;32:*.patch=00;32:*.diff=00;32:*.log=00;32:*.tex=00;32:*.doc=00;32:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.axa=00;36:*.oga=00;36:*.spx=00;36:*.xspf=00;36:" MAKEOPTS="-j9 --quiet" MANPATH="/etc/java-config-2/current-system-vm/man:/usr/local/share/man:/usr/share/man:/usr/share/binutils-data/x86_64-pc-linux-gnu/2.21/man:/usr/share/gcc-data/x86_64-pc-linux-gnu/4.5.2/man:/opt/intel/Compiler/11.1/056/man/en_US:/etc/java-config/system-vm/man/" MULTILIB_ABIS="amd64 x86" MULTILIB_STRICT_DENY="64-bit.*shared object" MULTILIB_STRICT_DIRS="/lib32 /lib /usr/lib32 /usr/lib /usr/kde/*/lib32 /usr/kde/*/lib /usr/qt/*/lib32 /usr/qt/*/lib /usr/X11R6/lib32 /usr/X11R6/lib" MULTILIB_STRICT_EXEMPT="(perl5|gcc|gcc-lib|binutils|eclipse-3|debug|portage)" NETBEANS="apisupport cnd groovy gsf harness ide identity j2ee java mobility nb php profiler soa visualweb webcommon websvccommon xml" NLSPATH="/opt/intel/Compiler/11.1/056/lib/locale/en_US/%N" OLDPWD="/root" OPENGL_PROFILE="nvidia" PAGER="/usr/bin/less" PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.5.2:/opt/intel/Compiler/11.1/056/bin/intel64:/opt/vmware/bin" PHP_TARGETS="" PKGDIR="/usr/portage/packages" PORTAGE_ARCHLIST="ppc sparc64-freebsd ppc-openbsd x86-openbsd ppc64 x86-winnt x86-fbsd ppc-aix alpha arm x86-freebsd s390 amd64 arm-linux x86-macos x64-openbsd ia64-hpux hppa x86-netbsd x86-cygwin amd64-linux ia64-linux x86 sparc-solaris x64-freebsd sparc64-solaris x86-linux x64-macos sparc m68k-mint ia64 mips ppc-macos x86-interix hppa-hpux amd64-fbsd x64-solaris mips-irix m68k sh x86-solaris sparc-fbsd" PORTAGE_BINHOST_CHUNKSIZE="3000" PORTAGE_BIN_PATH="/usr/lib64/portage/bin" PORTAGE_COMPRESS="xz" PORTAGE_COMPRESS_EXCLUDE_SUFFIXES="css gif htm[l]? jp[e]?g js pdf png" PORTAGE_COMPRESS_FLAGS="-9" PORTAGE_CONFIGROOT="/" PORTAGE_DEBUG="0" PORTAGE_DEPCACHEDIR="/var/cache/edb/dep" PORTAGE_ELOG_CLASSES="log warn error" PORTAGE_ELOG_MAILFROM="portage@localhost" PORTAGE_ELOG_MAILSUBJECT="[portage] ebuild log for ${PACKAGE} on ${HOST}" PORTAGE_ELOG_MAILURI="root" PORTAGE_ELOG_SYSTEM="save_summary echo" PORTAGE_FETCH_CHECKSUM_TRY_MIRRORS="5" PORTAGE_FETCH_RESUME_MIN_SIZE="350K" PORTAGE_GID="250" PORTAGE_GPG_SIGNING_COMMAND="gpg --sign --clearsign --yes --default-key "${PORTAGE_GPG_KEY}" --homedir "${PORTAGE_GPG_DIR}" "${FILE}"" PORTAGE_INST_GID="0" PORTAGE_INST_UID="0" PORTAGE_PYM_PATH="/usr/lib64/portage/pym" PORTAGE_QUIET="1" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_RSYNC_RETRIES="-1" PORTAGE_SANDBOX_COMPAT_LEVEL="16" PORTAGE_SYNC_STALE="30" PORTAGE_TMPDIR="/var/tmp" PORTAGE_TMPFS="/dev/shm" PORTAGE_VERBOSE="1" PORTAGE_WORKDIR_MODE="0700" PORTDIR="/usr/portage/gentoo/" PORTDIR_OVERLAY="/var/lib/layman/vmware /usr/portage/phorcix /usr/portage/yubikey" PRELINK_PATH_MASK="/usr/lib64/libfreebl3.so:/usr/lib64/libnssdbm3.so:/usr/lib64/libsoftokn3.so" PROFILE_ONLY_VARIABLES="ARCH ELIBC KERNEL USERLAND" PWD="/dev/snd" PYTHONDONTWRITEBYTECODE="1" RESUMECOMMAND="/usr/bin/aria2c --check-certificate=false -c -d "${DISTDIR}" -o "${FILE}" "${URI}"" RESUMECOMMAND_RSYNC="rsync -avP "${URI}" "${DISTDIR}/${FILE}"" RESUMECOMMAND_SSH="bash -c "x=\${2#ssh://} ; host=\${x%%/*} ; port=\${host##*:} ; host=\${host%:*} ; [[ \${host} = \${port} ]] && port=22 ; exec rsync --rsh=\"ssh -p\${port}\" -avP \"\${host}:/\${x#*/}\" \"\$1\"" rsync "${DISTDIR}/${FILE}" "${URI}"" ROOT="/" ROOTPATH="/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.5.2:/opt/intel/Compiler/11.1/056/bin/intel64:/opt/vmware/bin" RPMDIR="/usr/portage/rpm" RUBYOPT="-rauto_gem" RUBY_TARGETS="ruby18" SHELL="/bin/bash" SHLVL="1" STAGE1_USE="multilib nptl nptlonly unicode" SYMLINK_LIB="yes" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" TERM="rxvt-unicode" TMP="/tmp/.private/root" TMPDIR="/tmp/.private/root" USE="X acl alsa amd64 attr caps crypt idn mmx multilib nls nptl openmp pam pic sse sse2 sse3 ssl ssse3 unicode xcomposite xinerama xrandr" ALSA_CARDS="hda-intel" ALSA_PCM_PLUGINS="*" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CAMERAS="casio_qv" ELIBC="glibc" INPUT_DEVICES="evdev joystick wacom" KERNEL="linux" LINGUAS="de de_DE en en_US" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nvidia" USER="root" USERLAND="GNU" USE_EXPAND="ALSA_CARDS ALSA_PCM_PLUGINS APACHE2_MODULES APACHE2_MPMS CAMERAS COLLECTD_PLUGINS CROSSCOMPILE_OPTS DRACUT_MODULES DVB_CARDS ELIBC FCDSL_CARDS FOO2ZJS_DEVICES FRITZCAPI_CARDS GPSD_PROTOCOLS INPUT_DEVICES KERNEL LCD_DEVICES LINGUAS LIRC_DEVICES MISDN_CARDS NETBEANS_MODULES NGINX_MODULES_HTTP NGINX_MODULES_MAIL PHP_TARGETS QEMU_SOFTMMU_TARGETS QEMU_USER_TARGETS RUBY_TARGETS SANE_BACKENDS USERLAND VIDEO_CARDS XFCE_PLUGINS XTABLES_ADDONS" USE_EXPAND_HIDDEN="CROSSCOMPILE_OPTS ELIBC KERNEL USERLAND" USE_ORDER="env:pkg:conf:defaults:pkginternal:env.d" USE_PYTHON="2.7 3.1" VIDEO_CARDS="nvidia" XAUTHORITY="/root/.xauthb9CbrW" XDG_CONFIG_DIRS="/etc/xdg" XDG_DATA_DIRS="/usr/local/share:/usr/share" XSESSION="fvwm" XTABLES_ADDONS="" _="/usr/bin/emerge" ================================================================= Package Settings ================================================================= media-sound/mpd-0.16.2 was built with the following: USE="aac alsa curl fifo flac id3 inotify lame libmms libsamplerate mad (multilib) network ogg pipe sqlite unicode vorbis -ao -audiofile -bzip2 -cdio -cue -debug -ffmpeg -fluidsynth -ipv6 -jack -lastfmradio -mikmod -modplug -mpg123 -musepack -openal -oss -profile -pulseaudio -sid -sndfile -tcpd -twolame -wavpack -wildmidi -zeroconf -zip" LDFLAGS="-Wl,--hash-style=gnu -Wl,-O1 -Wl,--as-needed -Wl,--sort-common -L/usr/lib64/sidplay/builders" --snap-- groups $user: wheel audio cdrom video cdrw usb portage messagebus plugdev games cyberjack users For me that's a major issue, since I've known mpd to "just work", but I'll leave it as normal severity, since I seem to be the only one affected.
Please attach your (sanitised) mpd.conf too.
I don't see how this is mpd's problem. Your permissions are not set up properly, that's not something a media player should fix. The files are 660 root:audio on my system, which means that mpd needs to be run as a user in the audio group.
Created attachment 271223 [details] cleaned mpd.conf as requested
the output of `groups avx` and `ls -l /dev/snd` (before chmod 666) please
(In reply to comment #2) > I don't see how this is mpd's problem. > Your permissions are not set up properly, that's not something a media player > should fix. The files are 660 root:audio on my system, which means that mpd > needs to be run as a user in the audio group. That's why I said, 'I seem to be the only one with this problem' - well, actually not. Thing is, I didn't change the permissions beforehand, thus they are like the system/udev has set them up and it needed my personal interferance to make it work. After a reboot, all permissions are again 660, but it doesn't work. Strangely, it also works if I set group to "audio". Strange because it always worked with group "users" for me, but now it doesn't. I can live with that, changing the group, but it's imho not obvious and a change which has been introduced somewhere. > the output of `groups avx` and `ls -l /dev/snd` (before chmod 666) please groups avx: wheel audio cdrom video cdrw usb portage messagebus plugdev games cyberjack users ls -l /dev/snd: total 0 drwxr-xr-x 2 root root 60 26. Apr 2011 by-path crw-rw---- 1 root audio 116, 7 26. Apr 2011 controlC0 crw-rw---- 1 root audio 116, 6 26. Apr 2011 hwC0D0 crw-rw---- 1 root audio 116, 5 26. Apr 2011 pcmC0D0c crw-rw---- 1 root audio 116, 4 26. Apr 15:56 pcmC0D0p crw-rw---- 1 root audio 116, 3 26. Apr 2011 pcmC0D1p crw-rw---- 1 root audio 116, 2 26. Apr 2011 pcmC0D2c crw-rw---- 1 root audio 116, 1 26. Apr 2011 seq crw-rw---- 1 root audio 116, 33 26. Apr 2011 timer
I can't tell you why it worked before, but I can tell you that you definitely need to be in the audio group for a working ALSA. Otherwise there's no way mpd can access the devices. The default configuration for mpd makes it run under a new user "mpd" which is in the audio group already. You changed your configuration to a user who doesn't have access, we cannot prevent or "fix" this. I also will not add a hint in the ebuild, because this is already covered by the ALSA guide (http://www.gentoo.org/doc/en/alsa-guide.xml#doc_chap3, "Audio Group") and we can't add something like that to every ebuild that uses ALSA. There's one thing you can try: you could ask upstream if it is possible to implement a better error message to make this clear.
> but I can tell you that you definitely need to be in the audio group > for a working ALSA. Ähem? My user IS IN AUDIO, so group user should also suffice, as it has for years.
Ah, sorry, missed that. The problem seems to be that setgid() changes access to only that group then, which means your mpd runs as if you were only in the users group. The implementation didn't change much between 0.15.15 and 0.16.2, so I don't see why it should have worked before. Either way, you have two choices then: a) remove the user/group lines from your mpd.conf and run it as user, so mpd gets access to all of your groups, or b) change group "users" to group "audio". This behaviour actually looks intended.
The important part from the mpd.conf seems to be this: > If not specified primary group of user specified > with "user" setting will be used I know using "group users" works/worked for a long time, since I've actually got another machine running with this set. So, since for me it seems, mpd is the only application making problems here, maybe a einfo like the following would be ok?: "If you don't intend to run mpd as user mpd, make sure group is set to audio in mpd.conf" Anyways, I can live with the modification, so for me it's done and ok, just have to remember it for the future :)
Hi, I have similiar problem, but I'm using : user "mpd" group "users" And I had added mpd to audio group, so groups mpd goes : server snd # groups mpd audio What I've understood from forums and this bugreport, this config have to be working... In addition my /dev/snd : ls -l /dev/snd total 0 drwxr-xr-x 2 root root 60 May 19 15:11 by-path crw-rw---- 1 root audio 116, 0 May 19 15:11 controlC0 crw-rw---- 1 root audio 116, 24 May 19 15:11 pcmC0D0c crw-rw---- 1 root audio 116, 16 May 19 15:11 pcmC0D0p crw-rw---- 1 root audio 116, 25 May 19 15:11 pcmC0D1c crw-rw---- 1 root audio 116, 1 May 19 15:11 seq crw-rw---- 1 root audio 116, 33 May 19 15:11 timer
(In reply to comment #10) > Hi, I have similiar problem, but I'm using : > user "mpd" > group "users" > And I had added mpd to audio group, so groups mpd goes : > server snd # groups mpd > audio > What I've understood from forums and this bugreport, this config have to be > working... No, it does not. Forcing mpd to run in the group "users" means it will _only_ run in the group users, no matter what other groups the mpd user is in.