--- mediatomb-0.11.0.orig/debian/patches/series +++ mediatomb-0.11.0/debian/patches/series @@ -0,0 +1 @@ +configure_message.patch --- mediatomb-0.11.0.orig/debian/patches/configure_message.patch +++ mediatomb-0.11.0/debian/patches/configure_message.patch @@ -0,0 +1,12 @@ +Displaying an extra notice when inotify runtime support is enabled. +===================================================================== +--- ./configure.ac.bak 2008-03-02 14:32:08.000000000 -0500 ++++ ./configure.ac 2008-03-02 14:33:04.000000000 -0500 +@@ -2933,6 +2933,7 @@ + # if system inotify header exists, go with it, otherwise take our own + if test "x$ac_cv_header_sys_inotify_h" = xyes; then + AC_DEFINE([SYS_INOTIFY_H_OK],[1],[sys/inotify.h exists]) ++ AC_MSG_NOTICE([using system inotify headers]) + fi + AC_DEFINE([HAVE_INOTIFY], [1], [inotify presence]) + AC_SUBST(INOTIFY_CXXFLAGS) --- mediatomb-0.11.0.orig/debian/mediatomb-daemon.mediatomb.logrotate +++ mediatomb-0.11.0/debian/mediatomb-daemon.mediatomb.logrotate @@ -0,0 +1,8 @@ +"/var/log/mediatomb.log" { + monthly + rotate 5 + missingok + postrotate + pkill -HUP mediatomb + endscript +} --- mediatomb-0.11.0.orig/debian/changelog +++ mediatomb-0.11.0/debian/changelog @@ -0,0 +1,162 @@ +mediatomb (0.11.0-1ubuntu1) hardy; urgency=low + + * debian/mediatomb-daemon.mediatomb.default: Change NO_START to no, + so that the daemon is automatically started, once the -daemon + package is installed. LP: #205790. Thanks to Leonhard Wimmer and + Andres Mejia. + * debian/control: Update maintainer field as per spec. + + -- Stefan Potyra Tue, 25 Mar 2008 22:23:27 +0100 + +mediatomb (0.11.0-1) unstable; urgency=low + + * New upstream release. + * Include message about which inotify headers will be used when enabling + inotify runtime support. + * Fixed error with use of INTERFACE in init script. Also removed use of -m + option. + * Including new config.xml options. + * Added more build dependencies for new upstream release. + * Removed build dependency of libid3-dev, taglib is now preferred. + * mediatomb.xpm and manpage.xml is now included in orig tarball. + * inotify patch is not needed anymore. + * md5 patch has been committed upstream and is no longer needed. Also removed + README.Debian. + * TwinHelix PNG fix is now used. Removed from TODO. + * Adding dependency of iceweasel for mediatomb package. + * Updated copyright file. + * Updated watch file. + * Updated rules file for proper configure options. + + -- Andres Mejia Sun, 02 Mar 2008 13:09:16 -0500 + +mediatomb (0.10.0.dfsg1-2) unstable; urgency=low + + * Moved Debian packaging from svn to git. + + Updated Vcs entries in debian/control. + * Fixing inotify build problems. An inotify check will be supported for + runtime. Closes: #465177 + * Removing .pc directory when unpatching. + * Allowing options used in running configure to be overriden. + * Writing external script to generate orig source tarball and have + get-orig-source target in debian/rules call external script. + * Update copyright to mention two files that are removed from upstream. + * Add TODO about changing from using PNG Behavior fix from WebFX to using IE + PNG Fix delivered by TwinHelix. + * Adding TODO about ensuring that the WebUI works under any Mozilla based + browser. + + There's a known problem with the WebUI under Konqueror. + + -- Andres Mejia Tue, 19 Feb 2008 22:27:26 -0500 + +mediatomb (0.10.0.dfsg1-1) unstable; urgency=low + + [ Andres Mejia ] + * Moved myself in Maintainers field and Leonhard to Uploaders field. + * Added Sven Mueller to Uploaders field. + * Place comment in patch. + * Hard code some configure options for mediatomb + + Ensures proper dependencies are used in case someone builds packages with + 'debian/rules binary'. + * Adding 'get-orig-source' in debian/rules. + * Installing the README.Debian file to the mediatomb package as well. + * Added watch file. + * Add nostrip option for DEB_BUILD_OPTIONS. + * Fix permissions to comply with Debian policy. + * Call configure properly as described in autotools-dev documentation. + * Test for the existence of *-stamp stamps before attempting to remove. + * Renamed config.status target to configure and call configure-stamp target. + * Installing only ASCII upstream README and scripting.txt. + * Making mediatomb-daemon and mediatomb package binary independent. + + Updated debian/rules to use binary-indep target. + * Updated package descriptions. + * Specify CXXFLAGS to use. + * Add lintian override for use of x-www-browser. + * Rewriting init scripts based on /etc/init.d/skeleton. + + Update default configuration. + + Properly test for home directory and use it with daemon options. + * Updated mediatomb-daemon README.Debian. + * Renaming acinclude.m4 to acx_pthread.m4 during build time, so as not to + confuse it with acinclude.m4 from libtool. + * Changing Vcs-Browser to point to + http://svn.debian.org/wsvn/collab-maint/ext-maint/mediatomb/?op=log + * Creating package that could be suitable to upload directly to Debian + archive. (Closes: 440199) + + Packaging is a heavily modified form of the packaging found in + http://apt.mediatomb.cc/pool/main/m/mediatomb/ + + Changes made are written below in order of latest changes to oldest + changes. + * init scripts will be installed using the name "mediatomb". + + Added README.Debian showing how to remove the old files and startup + links. + * Added logrotate script. + * Bumped Standards-Version to 3.7.3. + * Changed Vcs-* entries to new location in svn.debian.org. + * Rewrote copyright file to be machine parsable and to list the copyright and + license information for the files derived from other projects. + * Taking out "open source (GPL)" words in package description. + * manpage docbook source added in debian/extras. + * Replaced RSA MD5 code with MD5 code found in dpkg (for license reasons). + + Code is removed in orig tarball and patched in during build. + * init script will send SIGTERM instead of SIGINT to stop mediatomb. + * Took out duplicate Homepage field in control file. + * Took out XS- from Vcs-* fields in control file. + * Took out deprecated Encoding key in the .desktop file. + * Fixing mediatomb-daemon.postrm to delete /var/lib/mediatomb when removing + or purging. + * Adding dpkg-statoverride command during purging to remove overrides used + by mediatomb-daemon package. + * Using deluser and delgroup commands to remove mediatomb user and group. + * Removed dependency on passwd. + * Added --disabled-{login,password} for adduser in preinst. + * Changed --shell option to use /usr/sbin/nologin in preinst. + * Using dpkg-statoverride instead of chown for postinst. + * Adding myself to Uploaders field instead of Maintainer field. + * Creating three packages. + + mediatomb-common will contain the the binary, the manpage, and everything + needed for scripting and the web interface. + + mediatomb-daemon will contain the files needed to run mediatomb as a + daemon. + + mediatomb will contain the desktop file that depends on a web browser to + access the web ui. + * Adding Homepage field in source stanza which will be supported soon. + * Removing konqueror as dependency for mediatomb as it is not yet recommended + to use konqueror to access the webui. + * Removing misc:Depends tag as it is not needed. + * Set myself as a maintainer. + * Removing debian/dirs as it is not needed. + * Removing prerm script as it did nothing. + * Renaming maintainer scripts since they are relevant only to the daemon + package. + * Replacing build-deps of autotools-dev with automake. + * Calling autotools to ensure everything is up to date. + * Adding "distclean" target when running debian/rules clean. + * Adding dependency to www-browser virtual package. + + Including some real packages first as alternatives. + * Adding desktop file to open mediatomb configuration page. + + Correct IP address and port to open is provided in + /var/lib/mediatomb/mediatomb.html. + * Adding menu file as well. + * Adding dh_installmenu and dh_desktop commands to debian/rules. + * Adding mediatomb.install for desktop and xpm file. + * Providing symlink for icon used with desktop entry. + * Addressing bad-distribution-in-changes-file lintian error. + + debian/changelog had unknown/invalid target distribution (etch). + * Addressing out-of-date-standards-version lintian warning. + + Bumped 'Standards-Version' to 3.7.2. + * Addressing debian-rules-ignores-make-clean-error lintian warning. + + Replaced "-$(MAKE) clean" with "[ ! -f Makefile ] || $(MAKE) clean" in + debian/rules file. + * Setting NO_START variable in mediatomb.default to "". + * Replacing build dependency of libsmjs-dev to libmozjs-dev. + + libsmjs-dev is a transition package. + * Adding -m /dev/null in D_ARGS for init script. + + Temporary workaround for a bug that has been fixed in SVN. + * Added Uploaders field in debian/control to add me as an uploader. + * Renamed some build depends to their appropriate virtual packages. + + Should make it easier for binNMUs. + + libid3-3.8.3-dev changed to libid3-dev. + + libmysqlclient15-dev changed to libmysqlclient-dev. + + zlib1g-dev changed to libz-dev. + + -- Andres Mejia Sat, 02 Feb 2008 01:42:48 -0500 --- mediatomb-0.11.0.orig/debian/mediatomb-common.install +++ mediatomb-0.11.0/debian/mediatomb-common.install @@ -0,0 +1,2 @@ +usr/bin/mediatomb +usr/share/mediatomb --- mediatomb-0.11.0.orig/debian/docs +++ mediatomb-0.11.0/debian/docs @@ -0,0 +1,4 @@ +README +doc/scripting.txt +doc/transcoding.txt +doc/ui.txt --- mediatomb-0.11.0.orig/debian/control +++ mediatomb-0.11.0/debian/control @@ -0,0 +1,59 @@ +Source: mediatomb +Section: net +Priority: optional +Maintainer: Ubuntu MOTU Developers +XSBC-Original-Maintainer: Andres Mejia +Uploaders: Leonhard Wimmer , Sven Mueller +Build-Depends: debhelper (>= 4.0.0), automake, quilt, libexpat-dev, libcurl4-gnutls-dev | libcurl3-gnutls-dev, libavformat-dev, libexif-dev, libtag1-dev, libmagic-dev, libmysqlclient-dev, libsqlite3-dev, libz-dev, libmozjs-dev +Standards-Version: 3.7.3 +Homepage: http://mediatomb.cc/ +Vcs-git: git://git.debian.org/git/collab-maint/mediatomb.git +Vcs-Browser: http://git.debian.org/?p=collab-maint/mediatomb.git + +Package: mediatomb-common +Architecture: any +Depends: ${shlibs:Depends} +Description: UPnP MediaServer (base package) + MediaTomb is an UPnP MediaServer with a nice web user interface, it allows you + to stream your digital media through your home network and listen to/watch it + on a variety of UPnP compatible devices. + . + MediaTomb implements the UPnP MediaServer V 1.0 specification that can be found + on http://www.upnp.org/. The current implementation focuses on parts that are + required by the specification, however we look into extending the functionality + to cover the optional parts of the spec as well. + . + This package contains the the binary, the manpage, and everything needed for + scripting and the web interface. + +Package: mediatomb-daemon +Architecture: all +Depends: mediatomb-common (>= ${source:Version}), adduser (>= 3.34) +Description: UPnP MediaServer (daemon package) + MediaTomb is an UPnP MediaServer with a nice web user interface, it allows you + to stream your digital media through your home network and listen to/watch it + on a variety of UPnP compatible devices. + . + MediaTomb implements the UPnP MediaServer V 1.0 specification that can be found + on http://www.upnp.org/. The current implementation focuses on parts that are + required by the specification, however we look into extending the functionality + to cover the optional parts of the spec as well. + . + This package contains the files needed to run mediatomb as a daemon. + +Package: mediatomb +Architecture: all +Depends: mediatomb-daemon (>= ${source:Version}), iceweasel | firefox | www-browser +Description: UPnP MediaServer (main package) + MediaTomb is an UPnP MediaServer with a nice web user interface, it allows you + to stream your digital media through your home network and listen to/watch it + on a variety of UPnP compatible devices. + . + MediaTomb implements the UPnP MediaServer V 1.0 specification that can be found + on http://www.upnp.org/. The current implementation focuses on parts that are + required by the specification, however we look into extending the functionality + to cover the optional parts of the spec as well. + . + This package contains the desktop file needed to access the web ui using a + system's default web browser. This package also acts as a virtual package to + install all other mediatomb packages. --- mediatomb-0.11.0.orig/debian/rules +++ mediatomb-0.11.0/debian/rules @@ -0,0 +1,160 @@ +#!/usr/bin/make -f +# -*- makefile -*- + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +# These are from the autotools-dev package documentation. +# /usr/share/doc/autotools-dev/README.Debian.gz +# from the section titled "Calling GNU configure properly" +export DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) +export DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) + +# FOR AUTOCONF 2.52 AND NEWER ONLY +ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE)) + confflags += --build $(DEB_HOST_GNU_TYPE) +else + confflags += --build $(DEB_BUILD_GNU_TYPE) --host $(DEB_HOST_GNU_TYPE) +endif + +# CFLAGS, CXXFLAGS, and LDFLAGS to use. Allowing them to be overriden. +DEFAULT_CFLAGS = -Wall -g +DEFAULT_CXXFLAGS = -Wall -g +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + DEFAULT_CFLAGS += -O0 + DEFAULT_CXXFLAGS += -O0 +else + DEFAULT_CFLAGS += -O2 + DEFAULT_CXXFLAGS += -O2 +endif +CFLAGS ?= $(DEFAULT_CFLAGS) +CXXFLAGS ?= $(DEFAULT_CXXFLAGS) +LDFLAGS ?= -Wl,-z,defs + +# Implement a MEDIATOMB_CONFIG_OPTIONS variable that sets the default configure +# options and allow it to be overridden. +# Use DEB_HOST_ARCH_OS from dpkg-architecture to determine OS we're building +# for. +export DEB_HOST_ARCH_OS ?= $(shell dpkg-architecture -qDEB_HOST_ARCH_OS) +ifeq (linux,$(DEB_HOST_ARCH_OS)) + ENABLE_INOTIFY = --enable-inotify +endif +MEDIATOMB_CONFIG_OPTIONS ?= $(confflags) \ + --prefix=/usr \ + --mandir=\$${prefix}/share/man \ + --infodir=\$${prefix}/share/info \ + --enable-sqlite3 \ + --enable-mysql \ + --enable-libjs \ + --enable-libmagic \ + --enable-libexif \ + --enable-libexpat \ + --enable-taglib \ + --enable-ffmpeg \ + --enable-external-transcoding \ + --disable-id3lib \ + --disable-libextractor \ + $(ENABLE_INOTIFY) \ + CFLAGS="$(CFLAGS)" \ + CXXFLAGS="$(CXXFLAGS)" \ + LDFLAGS="$(LDFLAGS)" + +patch: patch-stamp +patch-stamp: + dh_testdir + # Renaming acinclude.m4 to acx_pthread.m4, so as not to confuse it with + # an ordinary acinclude.m4. + mv acinclude.m4 acx_pthread.m4 + QUILT_PATCHES=debian/patches quilt push -a || test $$? = 2 + touch patch-stamp + +configure: patch configure-stamp +configure-stamp: + dh_testdir + aclocal -I . + autoheader -f + automake -a -c -f + autoconf -f + ./configure $(MEDIATOMB_CONFIG_OPTIONS) + touch configure-stamp + +build: configure build-stamp +build-stamp: + dh_testdir + $(MAKE) + touch build-stamp + +clean: clean-patched unpatch +clean-patched: + dh_testdir + dh_testroot + [ ! -f Makefile ] || $(MAKE) clean distclean + dh_clean + [ ! -f build-stamp ] || rm build-stamp + [ ! -f configure-stamp ] || rm configure-stamp + +unpatch: + dh_testdir + QUILT_PATCHES=debian/patches quilt pop -a -R || test $$? = 2 + [ ! -f acx_pthread.m4 ] || mv acx_pthread.m4 acinclude.m4 + [ ! -f patch-stamp ] || rm patch-stamp + [ ! -d .pc ] || rm -rf .pc + +install: build + dh_testdir + dh_testroot + dh_clean -k + $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp + install -d $(CURDIR)/debian/tmp/etc/mediatomb + install -m 0755 -d $(CURDIR)/debian/tmp/var/lib/mediatomb + install -m 0644 debian/config.xml.dist \ + $(CURDIR)/debian/tmp/etc/mediatomb/config.xml + +# Build architecture-independent files here. +binary-indep: build install + dh_testdir + dh_testroot + dh_install -pmediatomb-daemon --sourcedir=debian/tmp + dh_install -pmediatomb + mv debian/mediatomb/usr/share/lintian/overrides/mediatomb.override \ + debian/mediatomb/usr/share/lintian/overrides/mediatomb + dh_installchangelogs -i ChangeLog + dh_installdocs -i + dh_installinit -i --name=mediatomb + dh_installlogrotate -i --name=mediatomb + dh_link -pmediatomb /usr/share/mediatomb/web/icons/mt-icon120.png \ + usr/share/pixmaps/mediatomb.png + dh_installmenu -i + dh_desktop -i + dh_compress -i + dh_fixperms -i + dh_installdeb -i + dh_gencontrol -i + dh_md5sums -i + dh_builddeb -i + +# Build architecture-dependent files here. +binary-arch: build install + dh_testdir + dh_testroot + dh_install -a --sourcedir=debian/tmp + dh_installchangelogs -a ChangeLog + dh_installdocs -a + dh_installman -pmediatomb-common debian/tmp/usr/share/man/man1/mediatomb.1 +ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) + dh_strip -a +endif + dh_compress -a + dh_fixperms -a + dh_installdeb -a + dh_shlibdeps -a + dh_gencontrol -a + dh_md5sums -a + dh_builddeb -a + +get-orig-source: +# Use external script + $(dir $_)mediatomb-get-orig-source --remove-upstream-tarball + +binary: binary-indep binary-arch +.PHONY: build clean binary-indep binary-arch binary install --- mediatomb-0.11.0.orig/debian/mediatomb.desktop +++ mediatomb-0.11.0/debian/mediatomb.desktop @@ -0,0 +1,8 @@ +[Desktop Entry] +Name=MediaTomb +Comment=MediaTomb UPnP MediaServer web user interface. +Exec=/usr/bin/x-www-browser /var/lib/mediatomb/mediatomb.html +Icon=mediatomb.png +Terminal=false +Type=Application +Categories=AudioVideo; --- mediatomb-0.11.0.orig/debian/mediatomb.menu +++ mediatomb-0.11.0/debian/mediatomb.menu @@ -0,0 +1,5 @@ +?package(mediatomb):needs="X11" \ + section="Applications/Sound" \ + title="MediaTomb" command="/usr/bin/x-www-browser /var/lib/mediatomb/mediatomb.html" \ + longtitle="MediaTomb UPnP MediaServer web user interface." \ + icon="/usr/share/pixmaps/mediatomb.xpm" --- mediatomb-0.11.0.orig/debian/mediatomb-daemon.preinst +++ mediatomb-0.11.0/debian/mediatomb-daemon.preinst @@ -0,0 +1,39 @@ +#!/bin/sh -e + +DATADIR=/var/lib/mediatomb + +# stolen from mysql deb package... + +# If we use NIS then errors should be tolerated. It's up to the +# user to ensure that the mediatomb user is correctly setup. +# Beware that there are two ypwhich one of them needs the 2>/dev/null! +if test -n "`which ypwhich 2>/dev/null`" && ypwhich >/dev/null 2>&1; then + set +e +fi + +# creating mediatomb group if it isn't already there +if ! getent group mediatomb >/dev/null; then + # Adding system group: mediatomb. + addgroup --system mediatomb >/dev/null +fi + +# creating mediatomb user if it isn't already there +if ! getent passwd mediatomb >/dev/null; then + # Adding system user: mediatomb. + adduser \ + --system \ + --ingroup mediatomb \ + --home $DATADIR \ + --gecos "MediaTomb Server" \ + --shell /usr/sbin/nologin \ + --disabled-login \ + --disabled-password \ + mediatomb >/dev/null +fi + +# end of NIS tolerance zone +set -e + +#DEBHELPER# + +exit 0 --- mediatomb-0.11.0.orig/debian/mediatomb-daemon.postrm +++ mediatomb-0.11.0/debian/mediatomb-daemon.postrm @@ -0,0 +1,18 @@ +#!/bin/sh -e + +if [ "$1" = "remove" ] ; then + rm -rf /var/lib/mediatomb +fi + +if [ "$1" = "purge" ] ; then + rm -rf /var/log/mediatomb /var/log/mediatomb* \ + /var/run/mediatomb.pid /var/lib/mediatomb + deluser mediatomb || true + delgroup mediatomb || true + dpkg-statoverride --remove /etc/mediatomb/config.xml + dpkg-statoverride --remove /var/lib/mediatomb +fi + +#DEBHELPER# + +exit 0 --- mediatomb-0.11.0.orig/debian/mediatomb.override +++ mediatomb-0.11.0/debian/mediatomb.override @@ -0,0 +1,4 @@ +# This is purposely done so that mediatomb's web ui will be accessed through a +# user's default web browser. +mediatomb: desktop-command-not-in-package /usr/share/applications/mediatomb.desktop /usr/bin/x-www-browser +mediatomb: menu-command-not-in-package /usr/share/menu/mediatomb:5 /usr/bin/x-www-browser --- mediatomb-0.11.0.orig/debian/mediatomb-daemon.README.Debian +++ mediatomb-0.11.0/debian/mediatomb-daemon.README.Debian @@ -0,0 +1,12 @@ +Upgrading to mediatomb-0.10.0.dfsg1 +-------------------------------------------------------------------------- +If you are upgrading mediatomb-daemon to the Debian package version +0.10.0.dfsg1, you will need to remove the old init and default scripts that +were named "mediatomb-daemon" and remove the system startup links for the old +script. This upgrade will make no attempt to remove the old files. Here's a +quick command line example of what should be done. + +rm /etc/init.d/mediatomb-daemon +rm /etc/default/mediatomb-daemon +update-rc.d mediatomb-daemon remove +-------------------------------------------------------------------------- --- mediatomb-0.11.0.orig/debian/mediatomb-get-orig-source +++ mediatomb-0.11.0/debian/mediatomb-get-orig-source @@ -0,0 +1,54 @@ +#!/bin/sh + +# This script is used to download the upstream source for mediatomb and +# generate it into an orig source tarball for Debian. + +# Common variables used to ease maintenance of this script +MEDIATOMB_TARBALL="mediatomb-0.11.0.tar.gz" +MEDIATOMB_VERSION="0.11.0" +MEDIATOMB_TARBALL_CHECKSUM="661f08933830d920de21436fe122fb15" + +USAGE="\n\ +This script is used to generate the orig tarball used in building\n\ +Debian packages for mediatomb-$MEDIATOMB_VERSION.\n\ +Usage: mediatomb-get-orig-source [OPTION]\n\ +\n\ + -h, --help Display this help message.\n\ + --remove-upstream-tarball Remove the upstream source tarball.\n" + +while [ "$#" -gt "0" ] +do + case "$1" in + -h|--help) + echo "${USAGE}" + exit 1 + ;; + --remove-upstream-tarball) + REMOVE_UPSTREAM_TARBALL=1 + shift + ;; + esac +done + +# Download the tarball if it's not available in the current directory +[ -f $MEDIATOMB_TARBALL ] || \ + wget http://downloads.sourceforge.net/mediatomb/$MEDIATOMB_TARBALL + +# Verify the checksum +COMPUTED_CHECKSUM=`md5sum $MEDIATOMB_TARBALL | cut -d ' ' -f 1` +if [ $MEDIATOMB_TARBALL_CHECKSUM != $COMPUTED_CHECKSUM ] ; then + echo "Checksum verification failed. Checksum was $COMPUTED_CHECKSUM +Expected checksum $MEDIATOMB_TARBALL_CHECKSUM." + exit 1 +else + echo "Checksum verified. Checksum is $COMPUTED_CHECKSUM." +fi + +echo -n "Copying tarball..." +cp $MEDIATOMB_TARBALL mediatomb_$MEDIATOMB_VERSION.orig.tar.gz +echo "done." +if [ $REMOVE_UPSTREAM_TARBALL ]; then + echo -n "Removing upstream tarball..." + rm $MEDIATOMB_TARBALL + echo "done." +fi --- mediatomb-0.11.0.orig/debian/watch +++ mediatomb-0.11.0/debian/watch @@ -0,0 +1,12 @@ +# format version number, currently 3; this line is compulsory! +version=3 + +# mediatomb source download link from sourceforge.net +opts=uversionmangle=s/\.\?.*// \ +http://downloads.sourceforge.net/mediatomb/mediatomb-(.*)\.tar\.gz(.*) \ + 0.11.0 + +# Different check for mediatomb source, provided by uscan man page +http://sf.net/mediatomb/ \ + mediatomb-(.*)\.tar\.gz \ + 0.11.0 --- mediatomb-0.11.0.orig/debian/mediatomb-daemon.postinst +++ mediatomb-0.11.0/debian/mediatomb-daemon.postinst @@ -0,0 +1,14 @@ +#!/bin/sh -e + +if ! dpkg-statoverride --list /etc/mediatomb/config.xml >/dev/null 2>&1 +then + dpkg-statoverride --update --add mediatomb mediatomb 644 /etc/mediatomb/config.xml +fi +if ! dpkg-statoverride --list /var/lib/mediatomb >/dev/null 2>&1 +then + dpkg-statoverride --update --add mediatomb mediatomb 755 /var/lib/mediatomb +fi + +#DEBHELPER# + +exit 0 --- mediatomb-0.11.0.orig/debian/TODO.Debian +++ mediatomb-0.11.0/debian/TODO.Debian @@ -0,0 +1,31 @@ +Here's a list of issues brought up by Paul Wise . + +This is not a complete list as some of the issues are being resolved. +-------------------------------------------------------------------------- + +src/uuid looks like a copy of libuuid, if your package gets uploaded, +please notify the security team that your package contains an embedded +copy of libuuid. Please also suggest to upstream that they remove it +from the source and instead depend on an external libuuid from +http://sourceforge.net/projects/e2fsprogs for example. + +Same for tombupnp, that looks like a modified copy of libupnp, try to +get that merged into upstream libupnp: http://pupnp.sourceforge.net/ + +You also embed external JS libraries (each one js file), I'm not sure +what debian policy about that is, although we now have fckeditor in +the archive, so maybe package them up so other packages can depend on +them? Might want to bring this up on the debian-webapps list. + +Do you have access to upstream SVN? If so, I suggest moving the +.desktop file there so other distros may benefit from it too. +Obviously you'd also need to add a ./configure flag so that +distributions can choose which web browser to launch. Possibly the +same for debian/config.xml.inst, but I'm not too sure about that. + +-------------------------------------------------------------------------- + +Other TODOs, some of which are not Debian specific but still worth mentioning. +-------------------------------------------------------------------------- +Ensure that the WebUI works under any Mozilla based browser. There's a known +problem with the WebUI under Konqueror. --- mediatomb-0.11.0.orig/debian/mediatomb-daemon.mediatomb.default +++ mediatomb-0.11.0/debian/mediatomb-daemon.mediatomb.default @@ -0,0 +1,28 @@ +# Defaults for MediaTomb initscript +# sourced by /etc/init.d/mediatomb +# installed at /etc/default/mediatomb by the maintainer scripts + +# +# This is a POSIX shell fragment +# + +# Set whether the daemon should be started. Set this value to anything +# but 'yes' to enable the daemon +NO_START="no" + +# Additional options that are passed to the daemon. +OPTIONS="" + +# The network interface for MediaTomb to bind to and for which the multicast +# routing entry should be added; "" if the route shouldn't be added at all. +# For example: INTERFACE="eth0" +INTERFACE="" + +# The route command and arguments to be used if INTERFACE is defined. +# These variables should normally be left unmodified. +ROUTE_ADD="/sbin/route add -net 239.0.0.0 netmask 255.0.0.0" +ROUTE_DEL="/sbin/route del -net 239.0.0.0 netmask 255.0.0.0" + +# The user and group that MediaTomb should be run as. +USER="mediatomb" +GROUP="mediatomb" --- mediatomb-0.11.0.orig/debian/config.xml.dist +++ mediatomb-0.11.0/debian/config.xml.dist @@ -0,0 +1,112 @@ + + + + + + + + + MediaTomb + + /var/lib/mediatomb + /usr/share/mediatomb/web + + + sqlite3.db + + + localhost + mediatomb + mediatomb + + + + + + + + + + + /usr/share/mediatomb/js/common.js + /usr/share/mediatomb/js/playlists.js + + /usr/share/mediatomb/js/import.js + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + audio/L16 + no + yes + no + + + + + video/mpeg + yes + yes + yes + + + + + + --- mediatomb-0.11.0.orig/debian/mediatomb-daemon.install +++ mediatomb-0.11.0/debian/mediatomb-daemon.install @@ -0,0 +1,2 @@ +etc/mediatomb/config.xml +var/lib/mediatomb --- mediatomb-0.11.0.orig/debian/compat +++ mediatomb-0.11.0/debian/compat @@ -0,0 +1 @@ +4 --- mediatomb-0.11.0.orig/debian/mediatomb.install +++ mediatomb-0.11.0/debian/mediatomb.install @@ -0,0 +1,3 @@ +artwork/mediatomb.xpm usr/share/pixmaps +debian/mediatomb.desktop usr/share/applications +debian/mediatomb.override usr/share/lintian/overrides --- mediatomb-0.11.0.orig/debian/copyright +++ mediatomb-0.11.0/debian/copyright @@ -0,0 +1,258 @@ +This package was debianized by Leonhard Wimmer on +Sun, 1 Apr 2007 15:30:11 +0200 + +It was later redebianized by Andres Mejia on +Fri, 28 Dec 2007 16:45:04 -0500 + +It was downloaded from http://mediatomb.cc/ + +Files: debian/* +Copyright: (C) 2007-2008 Leonhard Wimmer + (C) 2007-2008 Andres Mejia +License: GPL-2 + The Debian packaging information is under the GPL, version 2. + +Files: source/uuid/* +Copyright: (C) 1996, 1997, 1998 Theodore Ts'o. +License: LGPL-any + uuid from E2fsprogs 1.35. Some functions from the UPnP SDK were + conflicting with libuuid, so the sources had to be taken in and some + renaming needed to be done. + +Files: src/md5/md5.c +Copyright: (C) 1999 Aladdin Enterprises. All rights reserved. +License: other + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + + L. Peter Deutsch + ghost@aladdin.com + + Independent implementation of MD5 (RFC 1321). + + This code implements the MD5 Algorithm defined in RFC 1321. + It is derived directly from the text of the RFC and not from the + reference implementation. + + The original and principal author of md5.c is L. Peter Deutsch + . Other authors are noted in the change history + that follows (in reverse chronological order): + + 1999-11-04 lpd Edited comments slightly for automatic TOC extraction. + 1999-10-18 lpd Fixed typo in header comment (ansi2knr rather than md5). + 1999-05-03 lpd Original version. + +Files: src/md5/md5.h +Copyright: (C) 1999 Aladdin Enterprises. All rights reserved. +License: other + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + + L. Peter Deutsch + ghost@aladdin.com + + Independent implementation of MD5 (RFC 1321). + + This code implements the MD5 Algorithm defined in RFC 1321. + It is derived directly from the text of the RFC and not from the + reference implementation. + + The original and principal author of md5.h is L. Peter Deutsch + . Other authors are noted in the change history + that follows (in reverse chronological order): + + 1999-11-04 lpd Edited comments slightly for automatic TOC extraction. + 1999-10-18 lpd Fixed typo in header comment (ansi2knr rather than md5); + added conditionalization for C++ compilation from Martin + Purschke . + 1999-05-03 lpd Original version. + +Files: tombupnp/upnp/src/uuid/upnp_md5.c tombupnp/upnp/src/inc/upnp_md5.h +Copyright: Public Domain +License: public domain + The code used in these files come directly from dpkg. + + This code implements the MD5 message-digest algorithm. + The algorithm is due to Ron Rivest. This code was + written by Colin Plumb in 1993, no copyright is claimed. + This code is in the public domain; do with it what you wish. + + Equivalent code is available from RSA Data Security, Inc. + This code has been tested against that, and is equivalent, + except that you don't need to include two pages of legalese + with every copy. + + To compute the message digest of a chunk of bytes, declare an + MD5Context structure, pass it to MD5Init, call MD5Update as + needed on buffers full of bytes, and then call MD5Final, which + will fill a supplied 16-byte array with the digest. + + Changed so as no longer to depend on Colin Plumb's `usual.h' header + definitions; now uses stuff from dpkg's config.h. + - Ian Jackson . + Still in the public domain. + +Files: web/js/md5.js +Copyright: (C) Paul Johnston 1999 - 2002 +License: BSD-3 + A JavaScript implementation of the RSA Data Security, Inc. MD5 Message + Digest Algorithm, as defined in RFC 1321. + Version 2.1 Copyright (C) Paul Johnston 1999 - 2002. + Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet + Distributed under the BSD License + See http://pajhome.org.uk/crypt/md5 for more info. + + The BSD license used for this file is given at + http://pajhome.org.uk/site/legal.html#bsdlicense. + +Files: web/js/prototype.js +Copyright: (C) 2005-2008 Sam Stephenson +License: other + Prototype is freely distributable under the terms of an MIT-style license. + For details, see the Prototype web site: http://www.prototypejs.org/ + + A copy of the license can be downloaded from + http://dev.rubyonrails.org/browser/spinoffs/prototype/trunk/LICENSE?format=raw + This is a copy of the license found on the website: + Copyright (c) 2005-2008 Sam Stephenson + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. + +Files: web/js/nanotree.js +Copyright: (C) 2003 Martin Mouritzen + (C) 2006 by Leonhard Wimmer (leo@mediatomb.org) +License: LGPL-any + File header does not specify a year for original author however CVS entry in + Sourceforge specifies that file was last modified sometime in April 2003. + More changes were made later by Leonhard Wimmer. + + (heavily modified version of) NanoTree http://nanotree.sourceforge.net/. + According to http://nanotree.sourceforge.net/ this file is published under + the LGPL License + +Files: web/js/iepngfix.htc +Copyright: (C) 2004-2008 Angus Turnbull http://www.twinhelix.com +License: LGPL-2.1+ + This library 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.1 of the License, or (at your option) any later version. + + This library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 + USA + +Files: tombupnp/* +Copyright: (C) 2000-2003 Intel Corporation + (C) 2006-2008 Sergey 'Jin' Bostandzhyan +License: BSD-3 | LGPL-2.1 + tombupnp is based on pupnp (http://pupnp.sf.net) which is based on libupnp + (http://upnp.sf.net), originally distributed under the BSD license, + Copyright (c) 2000-2003 Intel Corporation. Note that all changes to libupnp + /pupnp code that were made by the MediaTomb team are covered by the LGPL + license. + +Files: acinclude.m4 +Copyright: (C) 2006 Steven G. Johnson +License: GPL-2+ + ACX_PTHREAD autoconf script from http://autoconf-archive.cryp.to/ + +Files: src/inotify-nosys.h +Copyright: (C) 2005 John McCutchan + (C) 2006 Rohan McGovern +License: GPL-2+ + This header is found in inotify-tools which can be downloaded from + http://inotify-tools.sourceforge.net/. + +Files: src/mt_inotify.cc +Copyright: (C) 2006 Rohan McGovern + (C) 2005-2008 Gena Batyan + (C) 2005-2008 Sergey 'Jin' Bostandzhyan + (C) 2006-2008 Leonhard Wimmer +License: GPL-2 + This file was primarily written by the Mediatomb developers. The original + version of the next_events function was taken from inotify-tools. + +Files: * +Copyright: (C) 2005-2008 Gena Batyan + (C) 2005-2008 Sergey 'Jin' Bostandzhyan + (C) 2006-2008 Leonhard Wimmer +License: GPL-2 + All other files that have not been mentioned above were developed by the + main Mediatomb developers. Some small contributions have been made to + Mediatomb and the contributors are noted in the README file. + + This package is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License version 2 + as published by the Free Software Foundation. + + This package 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 General Public License + version 2 along with MediaTomb; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. + +Below is the locations on any Debian system for the complete text of some of the licenses used in this package. + +The complete text of the GNU General Public License can be found in +`/usr/share/common-licenses/GPL'. + +The complete text of the GNU General Public License, version 2 can be found in +`/usr/share/common-licenses/GPL-2'. + +The complete text of the GNU Lesser General Public License can be found in +`/usr/share/common-licenses/LGPL'. + +The complete text of the GNU Lesser General Public License, version 2.1 can be +found in `/usr/share/common-licenses/LGPL-2.1'. + +The complete text of the Berkeley Software Distribution license can be +found in `/usr/share/common-licenses/BSD'. --- mediatomb-0.11.0.orig/debian/mediatomb-daemon.mediatomb.init +++ mediatomb-0.11.0/debian/mediatomb-daemon.mediatomb.init @@ -0,0 +1,212 @@ +#! /bin/sh +# +# MediaTomb initscript +# +# Original Author: Tor Krill . +# Modified by: Leonhard Wimmer +# Modified again by Andres Mejia to +# base it off of /etc/init.d/skeleton +# +# + +### BEGIN INIT INFO +# Provides: mediatomb +# Required-Start: $all +# Required-Stop: $all +# Should-Start: $all +# Should-Stop: $all +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: upnp media server +### END INIT INFO + +# Do NOT "set -e" + +# PATH should only include /usr/* if it runs after the mountnfs.sh script +PATH=/usr/sbin:/usr/bin:/sbin:/bin +DESC="upnp media server" +NAME=mediatomb +DAEMON=/usr/bin/$NAME +PIDFILE=/var/run/$NAME.pid +LOGFILE=/var/log/$NAME.log +SCRIPTNAME=/etc/init.d/$NAME +DEFAULT=/etc/default/$NAME + +# Exit if the package is not installed +[ -x "$DAEMON" ] || exit 0 + +# Read configuration variable file if it is present +[ -r $DEFAULT ] && . $DEFAULT + +# Load the VERBOSE setting and other rcS variables +[ -f /etc/default/rcS ] && . /etc/default/rcS + +# Define LSB log_* functions. +# Depend on lsb-base (>= 3.0-6) to ensure that this file is present. +. /lib/lsb/init-functions + +# Start the daemon if NO_START is disabled in DEFAULT +if [ "$NO_START" = "yes" ]; then + test "$1" = "start" && \ + { + log_warning_msg "$NAME: Not starting $DESC." + log_warning_msg "$NAME: Disabled in $DEFAULT." + } + exit 0 +fi + +# Run as root if USER not specified +if [ ! $USER ]; then + USER=root +fi + +# Check for an invalid user or one without a home directory +eval USERHOME=~$USER +if [ "${USERHOME#/}" = "${USERHOME}" ]; then + log_failure_msg "$NAME: The user '$USER' specified in $DEFAULT is invalid." + exit 1 +fi + +if [ "$INTERFACE" != "" ] ; then + INTERFACE_ARG="-e $INTERFACE" +else + INTERFACE_ARG="" +fi + +DAEMON_ARGS="-c /etc/mediatomb/config.xml -d -u $USER -g $GROUP -P $PIDFILE -l $LOGFILE $INTERFACE_ARG $OPTIONS" + +# +# Function that starts the daemon/service. +# +do_start() { + # Return + # 0 if daemon has been started + # 1 if daemon was already running + # 2 if daemon could not be started + touch $PIDFILE + chown $USER:$GROUP $PIDFILE + touch $LOGFILE + chown $USER:$GROUP $LOGFILE + start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON \ + --test > /dev/null \ + || return 1 + start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- \ + $DAEMON_ARGS \ + || return 2 +} + +# +# Function that stops the daemon/service. +# +do_stop() { + # Return + # 0 if daemon has been stopped + # 1 if daemon was already stopped + # 2 if daemon could not be stopped + # other if a failure occurred + start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name $NAME + RETVAL="$?" + [ "$RETVAL" = 2 ] && return 2 + rm -f $PIDFILE + return "$RETVAL" +} + +# +# Function that sends a SIGHUP to the daemon/service. +# +do_reload() { + start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --name $NAME + return 0 +} + +case "$1" in + start) + if [ -n "$INTERFACE" ]; then + # try to add the multicast route + if [ "$VERBOSE" != no ]; then + { + log_action_begin_msg \ + "$NAME: Trying to add the multicast route" + $ROUTE_ADD $INTERFACE \ + && log_action_end_msg 0 + } || { + true && \ + log_warning_msg "Failed to add multicast route. skipping." + } + else + $ROUTE_ADD $INTERFACE >/dev/null 2>&1 || true + fi + fi + log_daemon_msg "Starting $DESC" "$NAME" + do_start + case "$?" in + 0) log_end_msg 0 ;; + 1) log_warning_msg "$DESC" "'$NAME'" "was already started" ;; + 2) log_end_msg 1 ;; + esac + ;; + stop) + log_daemon_msg "Stopping $DESC" "$NAME" + do_stop + case "$?" in + 0) + log_end_msg 0 + if [ -n "$INTERFACE" ]; then + # try to add the multicast route + if [ "$VERBOSE" != no ]; then + { + log_action_begin_msg \ + "$NAME: Trying to delete the multicast route" + $ROUTE_DEL $INTERFACE \ + && log_action_end_msg 0 + } || { + true && \ + log_warning_msg \ + "Failed to delete multicast route. skipping." + } + else + $ROUTE_DEL $INTERFACE >/dev/null 2>&1 || true + fi + fi + ;; + 1) log_warning_msg "$DESC" "'$NAME'" "was already stopped" ;; + 2) log_end_msg 1 ;; + esac + ;; + reload|force-reload) + log_daemon_msg "Reloading $DESC" "$NAME" + do_reload + log_end_msg $? + ;; + restart) + # + # If the "reload" option is implemented, move the "force-reload" + # option to the "reload" entry above. If not, "force-reload" is + # just the same as "restart". + # + log_daemon_msg "Restarting $DESC" "$NAME" + do_stop + case "$?" in + 0|1) + sleep 1 + do_start + case "$?" in + 0) log_end_msg 0 ;; + 1) log_end_msg 1 ;; # Old process is still running + *) log_end_msg 1 ;; # Failed to start + esac + ;; + *) + # Failed to stop + log_end_msg 1 + ;; + esac + ;; + *) + #echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2 + echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2 + exit 3 + ;; +esac + +: