Skip to content

Instantly share code, notes, and snippets.

@mereghost
Created January 15, 2010 17:48
Show Gist options
  • Save mereghost/278256 to your computer and use it in GitHub Desktop.
Save mereghost/278256 to your computer and use it in GitHub Desktop.
<?xml version="1.0" standalone='no'?><!--*-nxml-*-->
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<!-- $Id$ -->
<!--
This file is part of avahi.
avahi is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
avahi is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with avahi; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA.
-->
<!-- See avahi.service(5) for more information about this configuration file -->
<service-group>
<name replace-wildcards="yes">imperium</name>
<service>
<type>_daap._tcp</type>
<port>3689</port>
</service>
</service-group>
# $Id: mt-daapd.conf 454 2004-12-29 06:20:26Z rpedde $
#
# This is the mt-daapd config file.
#
# If you have problems or questions with the format of this file,
# direct your questions to [email protected].
#
# You can also check the website at http://mt-daapd.sourceforge.net,
# as there is a growing documentation library there, peer-supported
# forums and possibly more.
#
#
# web_root (required)
#
# Location of the admin web pages.
#
# If you installed from .RPM, .deb, or tarball with --prefix=/usr, then
# this is correct.
#
# If you installed from tarball without --prefix=/usr, then the correct
# path is probably /usr/local/share/mt-daapd/admin-root.
#
web_root /usr/local/share/mt-daapd/admin-root
#
# port (required)
#
# What port to listen on. It is possible to use a different
# port, but this is the default iTunes port
#
port 3689
#
# admin_pw (required)
#
# This is the password to the administrative pages
#
admin_pw daap
#
# db_dir (required)
#
# This is where mt-daapd stores its database of song information.
#
# If you installed from .RPM or .deb, then this directory already
# exists. If not, then YOU MUST CREATE THIS DIRECTORY!
#
db_dir /var/cache/mt-daapd
#
# mp3_dir (required)
#
# Location of the mp3 files to share. Note that because the
# files are stored in the database by inode, these must be
# in the same physical filesystem.
#
mp3_dir /windows/D/mp3
#
# servername (required)
#
# This is both the name of the server as advertised
# via rendezvous, and the name of the database
# exported via DAAP. Also know as "What shows up in iTunes".
#
servername imperium
#
# runas (required)
#
# This is the user to drop privs to if running as
# root. If mt-daapd is not started as root, this
# configuration option is ignored. Notice that this
# must be specified whether the server is running
# as root or not.
#
runas nobody
#
# playlist (optional)
#
# This is the location of a playlist file.
# This is for Apple-style "Smart Playlists"
# See the mt-daapd.playlist file in the
# contrib directory for syntax and examples
#
# This doesn't control static playlists... these
# are controlled with the "process_m3u" directive
# below.
#
playlist /etc/mt-daapd.playlist
#
# password (optional)
#
# This is the password required to listen to MP3 files
# i.e. the password that iTunes prompts for
#
#password mp3
#
# extensions (optional)
#
# These are the file extensions that the daap server will
# try to index and serve. By default, it only indexes and
# serves .mp3 files. It can also server .m4a and .m4p files,
# and just about any other files, really. Unfortunately, while
# it can *attempt* to serve other files (.ogg?), iTunes won't
# play them. Perhaps this would be useful on Linux with
# Rhythmbox, once it understands daap. (hurry up!)
#
#
extensions .mp3,.m4a,.m4p,.ogg,.mpc
#
# logfile (optional)
#
# This is the file to log to. If this is not configured,
# then it will log to the syslog.
#
# Not that the -d <level> switch will control the log verbosity.
# By default, it runs at log level 1. Log level 9 will churn
# out scads of useless debugging information. Values in between
# will vary the amount of logging you get.
#
#logfile /var/log/mt-daapd.log
#
# art_filename (optional)
#
# There is experimental support thanks to Hiren Joshi
# ([email protected]) for dynamically adding art to the id3v2
# header as it is streamed (!!). If you were using a music system
# like zina or andromeda, for example, with cover art called
# "_folderOpenImage.jpg", you could use the parameter
# art_file _folderOpenImage.jpg and if the file _folderOpenImage.jpg
# was located in the same folder as the .mp3 file, it would appear
# in iTunes. Cool, eh?
#
#art_filename _folderOpenImage.jpg
#
# rescan_interval
#
# How often to check the file system to see if any mp3 files
# have been added or removed.
#
# if not specified, the default is 0, which disables background scanning.
#
# If background rescanning is disabled, a scan can still be forced from the
# "status" page of the administrative web interface
#
# Setting a rescan_interval lower than the time it takes to rescan
# won't hurt anything, it will just waste CPU, and make connect times
# to the daap server longer.
#
#
rescan_interval 500
# always_scan
#
# The default behavior is not not do background rescans of the
# filesystem unless there are clients connected. The thought is to
# allow the drives to spin down unless they are in use. This might be
# of more importance in IDE drives that aren't designed to be run
# 24x7. Forcing a scan through the web interface will always work
# though, even if no users are connected.
# always_scan 0
#
# process_m3u
#
# By default m3u processing is turned off, since most m3u files
# sitting around in peoples mp3 directories have bad paths, and
# I hear about it. :)
#
# If you are sure your m3u files have good paths (i.e. unixly pathed,
# with relative paths relative to the directory the m3u is in), then
# you can turn on m3u processing by setting this directive to 1.
#
# I'm not sure "unixly" is a word, but you get the idea.
#
# process_m3u 0
#
# scan_type
#
#
# This sets how aggressively mp3 files should be scanned to determine
# file length. There are three values:
#
# 0 (Normal)
# Just scan the first mp3 frame to try and calculate size. This will
# be accurate for most files, but VBR files without an Xing tag will
# probably have wildly inaccurate file times. This is the default.
#
# 1 (Aggressive)
# This checks the bitrates of 10 frames in the middle of the song.
# This will still be inaccurate for VBR files without an Xing tag,
# but they probably won't be quite as inaccurate as 0. This takes
# more time, obviously, although the time hit will only happen the
# first time you scan a particular file.
#
# 2 (Painfully aggressive)
# This walks through the entire song, counting the number of frames.
# This should result in accurate song times, but will take the most
# time. Again, this will only have to be incurred the first time
# the file is indexed.
#
scan_type 2
#
# compress
#
# Whether to use gzip content-encoding when transferring playlists etc.
# This was contributed as a patch by Ciamac Moallemi just prior to the 0.2.1
# release, and as such, hasn't gotten as much testing as other features.
#
# This feature should substantially speed up transfers of large databases
# and playlists.
#
# It will eventually default to 1, but currently it defaults to 0.
#
compress 1
#!/bin/sh
### BEGIN INIT INFO
# Description: mt-daapd is a multi-threaded DAAP server for iTunes
# Provides: mt-daapd
# Required-Start: $local_fs network
# Should-Start: avahi-daemon
# Required-Stop: $local_fs
# Short-Description: multi-threaded DAAP server
# Default-Start: 3 5
# Default-Stop: 0 1 2 6
# pidfile: /var/run/mt-daapd
### END INIT INFO
test -x /usr/local/sbin/mt-daapd || { echo "/usr/local/sbin/mt-daapd not installed";
if [ "$1" = "stop" ]; then exit 0;
else exit 5; fi; }
. /etc/rc.status
# Reset status of this service
rc_reset
case "$1" in
start)
echo -n $"Starting DAAP server: "
## Start daemon with startproc(8). If this fails
## the return value is set appropriately by startproc.
/sbin/startproc /usr/local/sbin/mt-daapd -m
# Remember status and be verbose
rc_status -v
;;
stop)
echo -n $"Shutting down DAAP server: "
## Stop daemon with killproc(8) and if this fails
## killproc sets the return value according to LSB.
/sbin/killproc -TERM /usr/local/sbin/mt-daapd
# Remember status and be verbose
rc_status -v
;;
restart|reload)
## Stop the service and regardless of whether it was
## running or not, start it again.
$0 stop
$0 start
# Remember status and be quiet
rc_status
;;
status)
echo -n "Checking for service DAAP server "
## Check status with checkproc(8), if process is running
## checkproc will return with exit status 0.
# NOTE: checkproc returns LSB compliant status values.
/sbin/checkproc /usr/local/sbin/mt-daapd
# NOTE: rc_status knows that we called this init script with
# "status" option and adapts its messages accordingly.
rc_status -v
;;
*)
echo $"Usage: $0 {start|stop|restart|condrestart|status}"
exit 1
esac
exit
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment