From owner-freebsd-ports-bugs@FreeBSD.ORG Wed May 28 13:00:12 2008 Return-Path: Delivered-To: freebsd-ports-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 84EFC1065677 for ; Wed, 28 May 2008 13:00:12 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 4BBE58FC1E for ; Wed, 28 May 2008 13:00:12 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.14.2/8.14.2) with ESMTP id m4SD0ChQ062405 for ; Wed, 28 May 2008 13:00:12 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.2/8.14.1/Submit) id m4SD0CHs062398; Wed, 28 May 2008 13:00:12 GMT (envelope-from gnats) Resent-Date: Wed, 28 May 2008 13:00:12 GMT Resent-Message-Id: <200805281300.m4SD0CHs062398@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-ports-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Volodymyr Kostyrko Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 37C871065670 for ; Wed, 28 May 2008 12:50:02 +0000 (UTC) (envelope-from nobody@FreeBSD.org) Received: from www.freebsd.org (www.freebsd.org [IPv6:2001:4f8:fff6::21]) by mx1.freebsd.org (Postfix) with ESMTP id 111BE8FC28 for ; Wed, 28 May 2008 12:50:02 +0000 (UTC) (envelope-from nobody@FreeBSD.org) Received: from www.freebsd.org (localhost [127.0.0.1]) by www.freebsd.org (8.14.2/8.14.2) with ESMTP id m4SCmNfW048899 for ; Wed, 28 May 2008 12:48:23 GMT (envelope-from nobody@www.freebsd.org) Received: (from nobody@localhost) by www.freebsd.org (8.14.2/8.14.1/Submit) id m4SCmNbe048898; Wed, 28 May 2008 12:48:23 GMT (envelope-from nobody) Message-Id: <200805281248.m4SCmNbe048898@www.freebsd.org> Date: Wed, 28 May 2008 12:48:23 GMT From: Volodymyr Kostyrko To: freebsd-gnats-submit@FreeBSD.org X-Send-Pr-Version: www-3.1 Cc: Subject: ports/124063: audio/aureal-kmod lacks proper rcNG startup script X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 28 May 2008 13:00:12 -0000 >Number: 124063 >Category: ports >Synopsis: audio/aureal-kmod lacks proper rcNG startup script >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Wed May 28 13:00:11 UTC 2008 >Closed-Date: >Last-Modified: >Originator: Volodymyr Kostyrko >Release: FreeBSD 7.STABLE >Organization: INTS >Environment: FreeBSD cairn.ints.net 7.0-STABLE FreeBSD 7.0-STABLE #3: Tue May 27 10:17:19 EEST 2008 arcade@cairn.ints.net:/usr/obj/usr/src/sys/CAIRN i386 >Description: Supplied aureal.sh lacks knobs needed for rcNG to recognize and to start it automatically. >How-To-Repeat: Just install the port. You end up running '/usr/local/etc/rc.d/aureal.sh start' each time you boot up. >Fix: I have prepared a script on my own. Patch attached with submission follows: #!/bin/sh # # PROVIDE: aureal # BEFORE: hald # KEYWORD: nojail # # Add the following line to /etc/rc.conf[.local] to enable aureal # # aureal_enable="YES" # . /etc/rc.subr name="aureal" rcvar=${name}_enable load_rc_config $name : ${aureal_enable="NO"} start_cmd=aureal_start stop_cmd=aureal_stop CARD='' aureal_detect() { PCICONF="/usr/sbin/pciconf" if [ -z "${CARD}" -a -x ${PCICONF} ]; then if [ "`${PCICONF} -l 2>&- | grep 0x000312eb`" ]; then CARD=8810 elif [ "`${PCICONF} -l 2>&- | grep 0x000112eb`" ]; then CARD=8820 elif [ "`${PCICONF} -l 2>&- | grep 0x000212eb`" ]; then CARD=8830 fi fi if [ -z "${CARD}" ]; then echo "Unable to determine your Aureal card type -" \ "override it manually in $0" >&2 exit 255 fi PREFIX=/usr/local LIBDIR=${PREFIX}/lib/au88x0 DRIVERFILE=snd_au${CARD} } aureal_start() { aureal_detect if [ ! -f ${LIBDIR}/${DRIVERFILE}.ko ]; then echo "${LIBDIR}/${DRIVERFILE} for ${CARD} not found!" exit 64 fi if ! kldstat -qm ${DRIVERFILE}; then if kldload ${LIBDIR}/${DRIVERFILE}.ko; then echo 'aureal module loaded.' else warn 'aureal module failed to load.' return 1 fi fi if [ "$VIAKX133FIX" ]; then pcisel=`${PCICONF} -l 2>&- | grep ^pcm0 | awk -F: '{ gsub("^[^@]*@", ""); print $1":"$2":"$3 }'` if [ -z "$pcisel" ]; then echo " (WARNING: Soundcard PCI selector undetermined. Unable to install VIA KX133 workaround. Starting a playback will likely to lock-up your system!)" exit 64 fi oldvalue=`${PCICONF} -r -b $pcisel 0x40 2>&- | sed 's/ *$//'` echo -n " (with VIA KX133 workaround: ${pcisel},0x40: ${oldvalue} -> " ${PCICONF} -w -b $pcisel 0x40 0xff echo -n "`${PCICONF} -r -b $pcisel 0x40 2>&- | sed 's/ *$//'`)" fi return 0 } aureal_stop() { aureal_detect if kldstat -qm ${DRIVERFILE} && kldunload ${DRIVERFILE} ; then echo 'aureal module unloaded.' fi } run_rc_command "$1" >Release-Note: >Audit-Trail: >Unformatted: